Feladatok tömbökkel.

Slides:



Advertisements
Hasonló előadás
Készítette: Kosztyán Zsolt Tibor
Advertisements

Miskolci Egyetem Informatikai Intézet Általános Informatikai Tanszé k Pance Miklós Adatstruktúrák, algoritmusok előadásvázlat Miskolc, 2004 Technikai közreműködő:
Logaritmikus keresés Feladat: Adott egy 11 elemű, növekvően rendezett tömb számokkal feltöltve. Keressük meg a 17-es értéket! Ha van benne, hányadik eleme.
Kiválasztás (N,A,sorszam) i := 1 Ciklus amíg (A(i) nem T) i := i+1 Ciklus vége sorszam := i Eljárás vége Kiválasztás.
Sorozatszámítás Sorozatszámítás (N,A,s) s := kezdőérték
Feladat 1 •Tekintsük a prim alprogramot, amely az n, (n≤32000) paraméteren keresztül egy természetes számot kap és visszatéríti az 1–et, ha n prímszám.
Eumanók csapata POLGÁR AZ EURÓPAI DEMOKRÁCIÁBAN OTV.
Matematika és Tánc Felkészítő tanár: Komáromi Annamária
3. előadás (2005. március 1.) Utasítások, tömbök
Algoritmus és adatszerkezet Tavaszi félév Tóth Norbert1.
Programozási alapismeretek 10. előadás
Programozási alapismeretek 12. előadás. ELTE  Tapasztalatok a rendezésről Tapasztalatok a rendezésről  Keresés rendezett sorozatban Keresés rendezett.
Sztringek.
Borland C/C++ mintapéldák tömbökre
Borland C/C++ mintapéldák fájlokra. 1. példa Írjon olyan programot,amely megnyit egy hw.txt fájlt és írja bele a Hello világ szöveget. Ez után zárja le.
Gombkötő Attila Lineáris egyenlet.
Mátrix függvények Keresőfüggvények
Készítette: Pető László
Programozás I. Horváth Ernő.
A C++ programozási nyelvSoós Sándor 1/14 C++ programozási nyelv Gyakorlat hét Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet.
Miskolci Egyetem Informatikai Intézet Általános Informatikai Tanszé k Pance Miklós Adatstruktúrák, algoritmusok előadásvázlat Miskolc, 2004 Technikai közreműködő:
ELTE Szlávi - Zsakó: Programozási alapismeretek 5.1/ Keresés Specifikáció:  Bemenet: N:Egész, X:Tömb[1..N:Valami]
RADIX vissza bemutató Algoritmusok és adatszerkezetek 2. Papp István Javított.
Edényrendezés - RADIX „vissza” - bináris számokra
ELTE Szlávi - Zsakó: Programozási alapismeretek 5.1/ Sorozatszámítás Specifikáció (a végleges) :  Bemenet:
Nem determinisztikusság és párhuzamosság. A nem determinisztikusság a párhuzamosságban gyökeredzik. Példa: S par  parbegin x:=0   x:=1   x:=2 parend;
Miskolci Egyetem Informatikai Intézet Általános Informatikai Tanszé k Pance Miklós Adatstruktúrák, algoritmusok előadásvázlat Miskolc, 2004 Technikai közreműködő:
Programozás C# - ban Feladatsorok.
Nevezetes algoritmusok Beszúrás Van egy n-1 elemű rendezett tömbünk. Be akarunk szúrni egy n-edik elemet. Egyik lehetőség, hogy végigszaladunk a tömbön,
A PHP (PHP: Hypertext Preprocessor) nyílt forráskódú, számítógépes szkriptnyelv, legfőbb felhasználási területe a dinamikus weboldalak készítése. Emiatt.
Összetett adattípusok
Előrendezéses edényrendezés – RADIX „vissza”
VI. Konténerek 18. Tömbök 19. Rendezés, keresés, karbantartás
VI. Konténerek 18. Tömbök 19. Rendezés, keresés, karbantartás
Félévi típus feladatok
Lénárt Szabolcs Páll Boglárka
Listák, Vermek és Várakozási Sorok. Vermek Def: Egy sajátos lista amelyben minden beszúrási illetve törlési művelet csak a lista egyik végén történik.
Listák, Vermek és Várakozási Sorok
Listák, Vermek és Várakozási Sorok. Listák Pl: Kirándulók listája Bevásárló lista Alma Kenyér Krumpli Szappan Mosópor Bevásárló lista.
Hierarchikus lista Kétféle értelemezése van:
Rendezések és szövegkezelő függvények
Összetett adattípusok
1 Hernyák Zoltán Programozási Nyelvek II. Eszterházy Károly Főiskola Számítástudományi tsz.
1 AAO folytatás ++ Csink László. 2 Rekurzív bináris keresés (rendezett tömbben) public static int binker(int[] tomb, int value, int low, int high) public.
A D programozási nyelv Angeli Dávid. Nagy vonalakban  C++  
Programozási tételek.
Dijkstra algoritmusa Gubicza József (GUJQAAI.ELTE)
Az ábrán az inicializáló blokk lefutása utáni állapotot láthatjuk. A KÉSZ halmazhoz való tartozást színezéssel valósítjuk meg. A nem KÉSZ csúcsok fehérek,
Programozás I. Típus algoritmusok
Elektronikus tananyag
Pole (array of...).  Zložený datový typ na ukladanie viacerých premených  Zápis: var meno_pola : array [ konce intervala ] of základný typ ; Základné.
1 Mivel foglalkozunk a laborokon? 7. hét: Do-Loop-Until Do-Until-Looptömbök Function 7. hét: Do-Loop-Until és Do-Until-Loop ciklusok. Egy indexes tömbök,
Objektum orientált programozás
Szélességi bejárás Gráf-algoritmusok Algoritmusok és adatszerkezetek II. Gergály Gábor WZBNCH1.
Excel programozás (makró)
MÉLYSÉGI BEJÁRÁS FZGAF0 – PINTÉR LÁSZLÓ. ALGORITMUS ELMÉLETE Egy s kezdőpontból addig megyünk egy él mentén, ameddig el nem jutunk egy olyan csúcsba,
(Bináris) Kupac (heap) adattípus
„RADIX előre” edényrendezés Adott a háromjegyű bináris számok következő sorozata: 011, 111, 101, 010, 110, 001, 100 Adja meg a tömb tartalmát az egyes.
Adalékok egy véges összegzési feladathoz
Stonehenge Az angliai Wiltshire-ben, a Salisbury-síkságon áll a történelem előtti idők egyik legelképesztőbb emléke, a Stonehenge.
TÁMOP /1-2F Informatikai gyakorlatok 11. évfolyam Alapvető programozási tételek megvalósítása Czigléczky Gábor 2009.
Nevezetes algoritmusok
Excel programozás (makró)
Mediánok és rendezett minták
A tökéletes szám keresési algoritmusa
Menetrendes adatszolgáltatás
Lineáris keresés Keresés (N,A,sorszam) i := 1
Informatikai gyakorlatok 11. évfolyam
Depth First Search Backtracking
Programozási tételek.
Előadás másolata:

Feladatok tömbökkel

Keresés a tömbben 6 8 11 5 21 9 4 22 1 2 3 7 Az első páratlan szám megkeresése: 6 8 11 5 21 9 4 22 1 2 3 7 Az utolsó páratlan szám megkeresése: 6 8 11 5 21 9 4 22 1 2 3 7 Ha nincs, a programnak ezt jelezni kell.

Első páratlan szám keresése i=0; while (a[i]%2==0&&i<n) i++; if (a[i]%2==1) cout<<“Az elso paratlan szam indexe: ”<<i; else cout<<“Nincs paratlan”; Utolsó páratlan szám keresése i=n-1; while (a[i]%2==0&&i>=0) i--; if (a[i]%2==1) cout<<“Az utolso paratlan szam indexe: ”<<i;

Elem törlése a tömbből a[i]=a[i+1] csökken az n. 7 8 11 5 21 9 4 22 1 2 3 6 csökken az n. a törölt elem utániakat előre kell hozni. a[i]=a[i+1] Pl: törölni a 3 sorszámú elemet.

7 8 11 21 9 4 22 1 2 3 5 6 7 8 11 21 9 4 22 1 2 3 5 6 7 8 11 21 9 4 22 1 2 3 5 6 7 8 11 21 9 4 22 1 2 3 5 6 7 8 11 21 9 4 22 1 2 3 5 6

Elem beszúrása egy tömbbe 7 8 11 5 21 9 4 1 2 3 6 A beszúrásnál vigyázni kell, hogy a tömb létrehozásánál helyet hagyjunk az új elemnek. Pl: beszúrás a 2. sorszámú helyre (6-ra) Mivel nem törölhetünk semmit, el kell pucolni a 11-est – a 2-es helyről A sorrend megtartásához eltoljuk a számsort… a[i+1]=a[i]

7 8 11 5 21 9 4 1 2 3 6 7 8 11 5 21 9 4 1 2 3 6 7 8 11 5 21 9 4 1 2 3 6 7 8 11 5 21 9 4 1 2 3 6 7 8 11 5 21 9 4 1 2 3 6 7 8 6 11 5 21 9 4 1 2 3

Tömb elemeinek „megfordítása” 7 8 11 5 21 9 4 22 1 2 3 6 22 8 11 5 21 9 4 7 1 2 3 6 22 4 11 5 21 9 8 7 1 2 3 6

Az i. elemet felcseréljük az n-1-i.-kel: 0 n-1 1 n-2 2 n-3 … 22 4 9 5 21 11 8 7 1 2 3 6 22 4 9 21 5 11 8 7 1 2 3 6 Az i. elemet felcseréljük az n-1-i.-kel: 0 n-1 1 n-2 2 n-3 … A cserék száma n/2

Kitöltés véletlen számokkal #include <ctime> - a time() függvény miatt #include <cstdlib> - kell a rand és srand-hoz. srand(time(0)); - a véletlen szám sorozatnak kezdőértéket adunk rand() - alapbeállítás szerint 0 és 32767 közötti értéket generál. Ha szűkíteni akarjuk az intervallumot, maradékot kell számolni.

#include <iostream> #include <ctime> #include <cstdlib> using namespace std; int main() { int n,i ; cin>>n; int a[n]; srand(time(0)); for (i=0;i<n;i++) a[i]=rand()%10; }