Összetett programozási tételek

Méret: px
Mutatás kezdődik a ... oldaltól:

Download "Összetett programozási tételek"

Átírás

1 Összetett programozási tételek 3. előadás Sergyán Szabolcs Óbudai Egyetem Neumann János Informatikai Kar szeptember 19. Sergyán (OE NIK) AAO szeptember / 37

2 Felhasznált irodalom Szlávi Péter, Zsakó László: Módszeres programozás: Programozási tételek (Mikrológia 19). ELTE TTK, 2002 Sergyán (OE NIK) AAO szeptember / 37

3 Összetett programozási tételek 1 Másolás 2 Kiválogatás 3 Szétválogatás 4 Metszet 5 Egyesítés 6 Összefuttatás Sergyán (OE NIK) AAO szeptember / 37

4 Összetett programozási tételek 1 Másolás 2 Kiválogatás 3 Szétválogatás 4 Metszet 5 Egyesítés 6 Összefuttatás Sergyán (OE NIK) AAO szeptember / 37

5 Másolás Típusfeladatok 1 Egy osztály tanulóinak átlageredménye alapján határozzuk meg, hogy bizonyítványukba jeles, jó, közepes vagy elégséges kerül-e. (Tegyük fel, hogy bukott tanuló nincs.) Sergyán (OE NIK) AAO szeptember / 37

6 Másolás Típusfeladatok 1 Egy osztály tanulóinak átlageredménye alapján határozzuk meg, hogy bizonyítványukba jeles, jó, közepes vagy elégséges kerül-e. (Tegyük fel, hogy bukott tanuló nincs.) 2 Egy szöveg minden magánhangzóját cseréljük ki az e betűre. Sergyán (OE NIK) AAO szeptember / 37

7 Másolás Típusfeladatok 1 Egy osztály tanulóinak átlageredménye alapján határozzuk meg, hogy bizonyítványukba jeles, jó, közepes vagy elégséges kerül-e. (Tegyük fel, hogy bukott tanuló nincs.) 2 Egy szöveg minden magánhangzóját cseréljük ki az e betűre. Közös jellemzők Az eredmény ugyanannyi elemszámú mint a bemenet Sergyán (OE NIK) AAO szeptember / 37

8 Másolás Típusfeladatok 1 Egy osztály tanulóinak átlageredménye alapján határozzuk meg, hogy bizonyítványukba jeles, jó, közepes vagy elégséges kerül-e. (Tegyük fel, hogy bukott tanuló nincs.) 2 Egy szöveg minden magánhangzóját cseréljük ki az e betűre. Közös jellemzők Az eredmény ugyanannyi elemszámú mint a bemenet Az eredmény i. elemét a bemenet i. eleméből lehet meghatározni Sergyán (OE NIK) AAO szeptember / 37

9 Másolás Bemenet X : Feldolgozandó tömb N: Tömb elemeinek száma Sergyán (OE NIK) AAO szeptember / 37

10 Másolás Bemenet X : Feldolgozandó tömb N: Tömb elemeinek száma Kimenet Y : Eredmény tömb Sergyán (OE NIK) AAO szeptember / 37

11 Másolás Bemenet X : Feldolgozandó tömb N: Tömb elemeinek száma Kimenet Y : Eredmény tömb Pszeudokód Eljárás Másolás(N, X, Y ) Ciklus i := 1-től N-ig Y [i] := művelet X [i] Eljárás vége Sergyán (OE NIK) AAO szeptember / 37

12 Másolás Megjegyzések Az eredmény mindig ugyanannyi elemszámú mint a bemenet Sergyán (OE NIK) AAO szeptember / 37

13 Másolás Megjegyzések Az eredmény mindig ugyanannyi elemszámú mint a bemenet A művelet segítségével az egyszerű másoláson túl az egyes elemekkel egy-egy elemi műveletet is el lehet végezni (pl. másoljuk át a számok abszolutértékeit) Sergyán (OE NIK) AAO szeptember / 37

14 Másolás Megjegyzések Az eredmény mindig ugyanannyi elemszámú mint a bemenet A művelet segítségével az egyszerű másoláson túl az egyes elemekkel egy-egy elemi műveletet is el lehet végezni (pl. másoljuk át a számok abszolutértékeit) Nem lehet az elemek közötti összefüggést kihasználni Sergyán (OE NIK) AAO szeptember / 37

15 Másolás Magánhangzók e-re cserélése Eljárás Másolás(N, X, Y ) Ciklus i := 1-től N-ig Ha magánhangzó(x [i]) akkor Y [i] := e különben Y [i] := X [i] Elágazás vége Eljárás vége Sergyán (OE NIK) AAO szeptember / 37

16 Összetett programozási tételek 1 Másolás 2 Kiválogatás 3 Szétválogatás 4 Metszet 5 Egyesítés 6 Összefuttatás Sergyán (OE NIK) AAO szeptember / 37

17 Kiválogatás Típusfeladatok 1 Egy személyzeti nyilvántartásban emberek neve és személyi száma szerepel, adjuk meg a 20 évnél fiatalabb lányokat. Sergyán (OE NIK) AAO szeptember / 37

18 Kiválogatás Típusfeladatok 1 Egy személyzeti nyilvántartásban emberek neve és személyi száma szerepel, adjuk meg a 20 évnél fiatalabb lányokat. 2 Adjuk meg egy természetes szám összes osztóját. Sergyán (OE NIK) AAO szeptember / 37

19 Kiválogatás Típusfeladatok 1 Egy személyzeti nyilvántartásban emberek neve és személyi száma szerepel, adjuk meg a 20 évnél fiatalabb lányokat. 2 Adjuk meg egy természetes szám összes osztóját. 3 Adjuk meg egy osztály azon tanulóit, akik jeles átlagúak. Sergyán (OE NIK) AAO szeptember / 37

20 Kiválogatás Típusfeladatok 1 Egy személyzeti nyilvántartásban emberek neve és személyi száma szerepel, adjuk meg a 20 évnél fiatalabb lányokat. 2 Adjuk meg egy természetes szám összes osztóját. 3 Adjuk meg egy osztály azon tanulóit, akik jeles átlagúak. Közös jellemzők Hasonĺıtanak a feladatok a keresésre, mert adott tulajdonságú elem(ek)et kell megadni, de nem csak egyet. Sergyán (OE NIK) AAO szeptember / 37

21 Kiválogatás Típusfeladatok 1 Egy személyzeti nyilvántartásban emberek neve és személyi száma szerepel, adjuk meg a 20 évnél fiatalabb lányokat. 2 Adjuk meg egy természetes szám összes osztóját. 3 Adjuk meg egy osztály azon tanulóit, akik jeles átlagúak. Közös jellemzők Hasonĺıtanak a feladatok a keresésre, mert adott tulajdonságú elem(ek)et kell megadni, de nem csak egyet. Hasonĺıtanak a megszámlálásra is, de nem megszámolni kell az elemeket, hanem megadni/másolni. Sergyán (OE NIK) AAO szeptember / 37

22 Kiválogatás Bemenet X : Feldolgozandó tömb N: Tömb elemeinek száma T : Tulajdonság függvény Sergyán (OE NIK) AAO szeptember / 37

23 Kiválogatás Bemenet X : Feldolgozandó tömb N: Tömb elemeinek száma T : Tulajdonság függvény Kimenet Y : Eredmény tömb DB: Tömb elemeinek száma Sergyán (OE NIK) AAO szeptember / 37

24 Kiválogatás Bemenet X : Feldolgozandó tömb N: Tömb elemeinek száma T : Tulajdonság függvény Kimenet Y : Eredmény tömb DB: Tömb elemeinek száma Pszeudokód Eljárás Kiválogatás(N, X, DB, Y ) DB := 0 Ciklus i := 1-től N-ig Ha T (X [i]) akkor DB := DB + 1 Y [DB] := X [i] Elágazás vége Eljárás vége Sergyán (OE NIK) AAO szeptember / 37

25 Kiválogatás Megjegyzések Az eredmény tömb elemszámát nem lehet előre pontosan meghatározni, de biztos, hogy nincs több eleme mint a bemeneti tömbnek. Sergyán (OE NIK) AAO szeptember / 37

26 Kiválogatás Megjegyzések Az eredmény tömb elemszámát nem lehet előre pontosan meghatározni, de biztos, hogy nincs több eleme mint a bemeneti tömbnek. X [i] helyett néha csak i-t másoljuk Y -ba, azaz a feltételnek megfelelő elemek indexét tároljuk Sergyán (OE NIK) AAO szeptember / 37

27 Kiválogatás Ha a bemeneti sorozatra már nincs szükség a későbbiekben, akkor a kiválogatás eredménye a bemeneti sorozat elejére is kerülhet. Sergyán (OE NIK) AAO szeptember / 37

28 Kiválogatás Ha a bemeneti sorozatra már nincs szükség a későbbiekben, akkor a kiválogatás eredménye a bemeneti sorozat elejére is kerülhet. Ebben az esetben kevesebb memóriát kell lefoglalnunk. Sergyán (OE NIK) AAO szeptember / 37

29 Kiválogatás Ha a bemeneti sorozatra már nincs szükség a későbbiekben, akkor a kiválogatás eredménye a bemeneti sorozat elejére is kerülhet. Ebben az esetben kevesebb memóriát kell lefoglalnunk. Pszeudokód Eljárás Kiválogatás(N, X, DB) DB:=0 Ciklus i := 1-től N-ig Ha T (X [i]) akkor DB := DB + 1 X [DB] := X [i] Elágazás vége Eljárás vége Sergyán (OE NIK) AAO szeptember / 37

30 Kiválogatás Lehetséges megvalósítás az is, ha a kihagyandó elemeket megjelöljük valamilyen módon. Sergyán (OE NIK) AAO szeptember / 37

31 Kiválogatás Lehetséges megvalósítás az is, ha a kihagyandó elemeket megjelöljük valamilyen módon. Ebben az esetben is elveszítjük az eredeti sorozatot. Sergyán (OE NIK) AAO szeptember / 37

32 Kiválogatás Lehetséges megvalósítás az is, ha a kihagyandó elemeket megjelöljük valamilyen módon. Ebben az esetben is elveszítjük az eredeti sorozatot. Pszeudokód Eljárás Kiválogatás(N, X ) Ciklus i := 1-től N-ig Ha (T (X [i])) akkor X [i] := speciális érték Elágazás vége Eljárás vége Sergyán (OE NIK) AAO szeptember / 37

33 Kiválogatás Jeles átlagú tanulók neve Eljárás Kiválogatás(N, X, DB, NEV ) DB := 0 Ciklus i := 1-től N-ig Ha X [i].atlag 4.71 akkor DB := DB + 1 NEV [DB] := X [i].nev Elágazás vége Eljárás vége Sergyán (OE NIK) AAO szeptember / 37

34 Összetett programozási tételek 1 Másolás 2 Kiválogatás 3 Szétválogatás 4 Metszet 5 Egyesítés 6 Összefuttatás Sergyán (OE NIK) AAO szeptember / 37

35 Szétválogatás Típusfeladatok 1 Adott N darab különböző természetes szám, válogassuk szét a párosakat és a páratlanokat. Sergyán (OE NIK) AAO szeptember / 37

36 Szétválogatás Típusfeladatok 1 Adott N darab különböző természetes szám, válogassuk szét a párosakat és a páratlanokat. 2 Az osztály tanulóit névsoruk alapján válogassuk szét lányokra és fiúkra. Sergyán (OE NIK) AAO szeptember / 37

37 Szétválogatás Típusfeladatok 1 Adott N darab különböző természetes szám, válogassuk szét a párosakat és a páratlanokat. 2 Az osztály tanulóit névsoruk alapján válogassuk szét lányokra és fiúkra. 3 Az osztály tanulóinak félévi átlageredményei alapján válogassuk szét jelesekre, jókra, közepesekre, elégségesekre, valamint elégtelenekre. Sergyán (OE NIK) AAO szeptember / 37

38 Szétválogatás Típusfeladatok 1 Adott N darab különböző természetes szám, válogassuk szét a párosakat és a páratlanokat. 2 Az osztály tanulóit névsoruk alapján válogassuk szét lányokra és fiúkra. 3 Az osztály tanulóinak félévi átlageredményei alapján válogassuk szét jelesekre, jókra, közepesekre, elégségesekre, valamint elégtelenekre. Közös jellemzők Egy sorozathoz több sorozatot rendelünk Sergyán (OE NIK) AAO szeptember / 37

39 Szétválogatás Típusfeladatok 1 Adott N darab különböző természetes szám, válogassuk szét a párosakat és a páratlanokat. 2 Az osztály tanulóit névsoruk alapján válogassuk szét lányokra és fiúkra. 3 Az osztály tanulóinak félévi átlageredményei alapján válogassuk szét jelesekre, jókra, közepesekre, elégségesekre, valamint elégtelenekre. Közös jellemzők Egy sorozathoz több sorozatot rendelünk Lényegében egymás után kettő (vagy több) kiválogatással megoldhatók a feladatok Sergyán (OE NIK) AAO szeptember / 37

40 Szétválogatás Típusfeladatok 1 Adott N darab különböző természetes szám, válogassuk szét a párosakat és a páratlanokat. 2 Az osztály tanulóit névsoruk alapján válogassuk szét lányokra és fiúkra. 3 Az osztály tanulóinak félévi átlageredményei alapján válogassuk szét jelesekre, jókra, közepesekre, elégségesekre, valamint elégtelenekre. Közös jellemzők Egy sorozathoz több sorozatot rendelünk Lényegében egymás után kettő (vagy több) kiválogatással megoldhatók a feladatok Két kiválogatással megvalósítani viszont felesleges, mert amely elemeket nem választunk ki a kiválogatásnál az egyik csoportba, azok tartoznak a másik csoportba Sergyán (OE NIK) AAO szeptember / 37

41 Szétválogatás Bemenet X : Feldolgozandó tömb N: Tömb elemeinek száma T : Tulajdonság függvény Sergyán (OE NIK) AAO szeptember / 37

42 Szétválogatás Bemenet X : Feldolgozandó tömb N: Tömb elemeinek száma T : Tulajdonság függvény Kimenet Y : Egyik eredmény tömb Z: Másik eredmény tömb DBY : Y elemeinek száma DBZ: Z elemeinek száma Sergyán (OE NIK) AAO szeptember / 37

43 Szétválogatás Bemenet X : Feldolgozandó tömb N: Tömb elemeinek száma T : Tulajdonság függvény Kimenet Y : Egyik eredmény tömb Z: Másik eredmény tömb DBY : Y elemeinek száma DBZ: Z elemeinek száma Pszeudokód Eljárás Szétválogatás(N, X, DBY, Y, DBZ, Z) DBY := 0 DBZ := 0 Ciklus i := 1-től N-ig Ha T (X [i]) akkor DBY := DBY + 1 Y [DBY ] := X [i] különben DBZ := DBZ + 1 Z[DBZ] := X [i] Elágazás vége Eljárás vége Sergyán (OE NIK) AAO szeptember / 37

44 Szétválogatás Megjegyzések Y és Z elemszáma nem határozatható meg előre, így N elemű tömböknek foglalunk helyet a memóriában Sergyán (OE NIK) AAO szeptember / 37

45 Szétválogatás Az eredmények egyetlen tömbbe is helyezhetők úgy, hogy a T tulajdonságúak az elején, a többi pedig a végén lesznek Sergyán (OE NIK) AAO szeptember / 37

46 Szétválogatás Az eredmények egyetlen tömbbe is helyezhetők úgy, hogy a T tulajdonságúak az elején, a többi pedig a végén lesznek Pszeudokód Eljárás Szétválogatás(N, X, DBY, Y ) DBY := 0 INDZ := N + 1 Ciklus i := 1-től N-ig Ha T (X [i]) akkor DBY := DBY + 1 Y [DBY ] := X [i] különben INDZ := INDZ 1 Y [INDZ] := X [i] Elágazás vége Eljárás vége Sergyán (OE NIK) AAO szeptember / 37

47 Szétválogatás Az elemek helyben, azaz a bemeneti tömbben történő szétválogatása is megoldható Sergyán (OE NIK) AAO szeptember / 37

48 Szétválogatás Az elemek helyben, azaz a bemeneti tömbben történő szétválogatása is megoldható Pszeudokód Eljárás Szétválogatás(N, X, DB) E := 1; U := N; seged := X [E] Ciklus amíg E < U Ciklus amíg E < U és (T (X [U])) U := U 1 Ha E < U akkor X [E] := X [U]; E := E + 1 Ciklus amíg E < U és T (X [E]) E := E + 1 Ha E < U akkor X [U] := X [E]; U := U 1 Elágazás vége Elágazás vége X [E] := seged Ha T (X [E]) akkor DB := E különben DB := E 1 Elágazás vége Eljárás vége Sergyán (OE NIK) AAO szeptember / 37

49 Szétválogatás Az elemek helyben, azaz a bemeneti tömbben történő szétválogatása is megoldható Pszeudokód E = 1 U = 11 Eljárás Szétválogatás(N, X, DB) E := 1; U := N; seged := X [E] Ciklus amíg E < U Ciklus amíg E < U és (T (X [U])) U := U 1 Ha E < U akkor X [E] := X [U]; E := E + 1 Ciklus amíg E < U és T (X [E]) E := E + 1 Ha E < U akkor X [U] := X [E]; U := U 1 Elágazás vége Elágazás vége X [E] := seged Ha T (X [E]) akkor DB := E különben DB := E 1 Elágazás vége Eljárás vége seged = i X = informatika Sergyán (OE NIK) AAO szeptember / 37

50 Szétválogatás Az elemek helyben, azaz a bemeneti tömbben történő szétválogatása is megoldható Pszeudokód E = 2 U = 11 Eljárás Szétválogatás(N, X, DB) E := 1; U := N; seged := X [E] Ciklus amíg E < U Ciklus amíg E < U és (T (X [U])) U := U 1 Ha E < U akkor X [E] := X [U]; E := E + 1 Ciklus amíg E < U és T (X [E]) E := E + 1 Ha E < U akkor X [U] := X [E]; U := U 1 Elágazás vége Elágazás vége X [E] := seged Ha T (X [E]) akkor DB := E különben DB := E 1 Elágazás vége Eljárás vége seged = i X = anformatika Sergyán (OE NIK) AAO szeptember / 37

51 Szétválogatás Az elemek helyben, azaz a bemeneti tömbben történő szétválogatása is megoldható Pszeudokód E = 2 U = 10 Eljárás Szétválogatás(N, X, DB) E := 1; U := N; seged := X [E] Ciklus amíg E < U Ciklus amíg E < U és (T (X [U])) U := U 1 Ha E < U akkor X [E] := X [U]; E := E + 1 Ciklus amíg E < U és T (X [E]) E := E + 1 Ha E < U akkor X [U] := X [E]; U := U 1 Elágazás vége Elágazás vége X [E] := seged Ha T (X [E]) akkor DB := E különben DB := E 1 Elágazás vége Eljárás vége seged = i X = anformatikn Sergyán (OE NIK) AAO szeptember / 37

52 Szétválogatás Az elemek helyben, azaz a bemeneti tömbben történő szétválogatása is megoldható Pszeudokód E = 3 U = 9 Eljárás Szétválogatás(N, X, DB) E := 1; U := N; seged := X [E] Ciklus amíg E < U Ciklus amíg E < U és (T (X [U])) U := U 1 Ha E < U akkor X [E] := X [U]; E := E + 1 Ciklus amíg E < U és T (X [E]) E := E + 1 Ha E < U akkor X [U] := X [E]; U := U 1 Elágazás vége Elágazás vége X [E] := seged Ha T (X [E]) akkor DB := E különben DB := E 1 Elágazás vége Eljárás vége seged = i X = aiformatikn Sergyán (OE NIK) AAO szeptember / 37

53 Szétválogatás Az elemek helyben, azaz a bemeneti tömbben történő szétválogatása is megoldható Pszeudokód E = 3 U = 8 Eljárás Szétválogatás(N, X, DB) E := 1; U := N; seged := X [E] Ciklus amíg E < U Ciklus amíg E < U és (T (X [U])) U := U 1 Ha E < U akkor X [E] := X [U]; E := E + 1 Ciklus amíg E < U és T (X [E]) E := E + 1 Ha E < U akkor X [U] := X [E]; U := U 1 Elágazás vége Elágazás vége X [E] := seged Ha T (X [E]) akkor DB := E különben DB := E 1 Elágazás vége Eljárás vége seged = i X = aiformatfkn Sergyán (OE NIK) AAO szeptember / 37

54 Szétválogatás Az elemek helyben, azaz a bemeneti tömbben történő szétválogatása is megoldható Pszeudokód E = 4 U = 7 Eljárás Szétválogatás(N, X, DB) E := 1; U := N; seged := X [E] Ciklus amíg E < U Ciklus amíg E < U és (T (X [U])) U := U 1 Ha E < U akkor X [E] := X [U]; E := E + 1 Ciklus amíg E < U és T (X [E]) E := E + 1 Ha E < U akkor X [U] := X [E]; U := U 1 Elágazás vége Elágazás vége X [E] := seged Ha T (X [E]) akkor DB := E különben DB := E 1 Elágazás vége Eljárás vége seged = i X = aiaormatfkn Sergyán (OE NIK) AAO szeptember / 37

55 Szétválogatás Az elemek helyben, azaz a bemeneti tömbben történő szétválogatása is megoldható Pszeudokód E = 5 U = 6 Eljárás Szétválogatás(N, X, DB) E := 1; U := N; seged := X [E] Ciklus amíg E < U Ciklus amíg E < U és (T (X [U])) U := U 1 Ha E < U akkor X [E] := X [U]; E := E + 1 Ciklus amíg E < U és T (X [E]) E := E + 1 Ha E < U akkor X [U] := X [E]; U := U 1 Elágazás vége Elágazás vége X [E] := seged Ha T (X [E]) akkor DB := E különben DB := E 1 Elágazás vége Eljárás vége seged = i X = aiaormrtfkn Sergyán (OE NIK) AAO szeptember / 37

56 Szétválogatás Az elemek helyben, azaz a bemeneti tömbben történő szétválogatása is megoldható Pszeudokód E = 5 U = 5 Eljárás Szétválogatás(N, X, DB) E := 1; U := N; seged := X [E] Ciklus amíg E < U Ciklus amíg E < U és (T (X [U])) U := U 1 Ha E < U akkor X [E] := X [U]; E := E + 1 Ciklus amíg E < U és T (X [E]) E := E + 1 Ha E < U akkor X [U] := X [E]; U := U 1 Elágazás vége Elágazás vége X [E] := seged Ha T (X [E]) akkor DB := E különben DB := E 1 Elágazás vége Eljárás vége seged = i X = aiaoimrtfkn DB = 5 Sergyán (OE NIK) AAO szeptember / 37

57 Szétválogatás Páros-páratlan szétválogatás Eljárás Szétválogatás(N, X, DB, Y ) DB := 0 IND := N + 1 Ciklus i := 1-től N-ig Ha páros(x [i]) akkor DB := DB + 1 Y [DB] := X [i] különben IND := IND 1 Y [IND] := X [i] Elágazás vége ciklus vége Eljárás vége Sergyán (OE NIK) AAO szeptember / 37

58 Összetett programozási tételek 1 Másolás 2 Kiválogatás 3 Szétválogatás 4 Metszet 5 Egyesítés 6 Összefuttatás Sergyán (OE NIK) AAO szeptember / 37

59 Metszet Típusfeladatok 1 Adjuk meg két természetes szám osztóinak ismeretében az összes közös osztójukat. Sergyán (OE NIK) AAO szeptember / 37

60 Metszet Típusfeladatok 1 Adjuk meg két természetes szám osztóinak ismeretében az összes közös osztójukat. 2 Nyáron és télen is végeztünk madármegfigyeléseket a Balatonon. Ismerjük, hogy nyáron, illetve télen mely madárfajok fordultak elő. Állapítsuk meg ezek alapján, hogy melyek a nem költöző madarak. Sergyán (OE NIK) AAO szeptember / 37

61 Metszet Típusfeladatok 1 Adjuk meg két természetes szám osztóinak ismeretében az összes közös osztójukat. 2 Nyáron és télen is végeztünk madármegfigyeléseket a Balatonon. Ismerjük, hogy nyáron, illetve télen mely madárfajok fordultak elő. Állapítsuk meg ezek alapján, hogy melyek a nem költöző madarak. 3 Négy ember heti szabad estéi ismeretében állapítsuk meg, hogy a héten melyik este mehetnek el együtt moziba. Sergyán (OE NIK) AAO szeptember / 37

62 Metszet Típusfeladatok 1 Adjuk meg két természetes szám osztóinak ismeretében az összes közös osztójukat. 2 Nyáron és télen is végeztünk madármegfigyeléseket a Balatonon. Ismerjük, hogy nyáron, illetve télen mely madárfajok fordultak elő. Állapítsuk meg ezek alapján, hogy melyek a nem költöző madarak. 3 Négy ember heti szabad estéi ismeretében állapítsuk meg, hogy a héten melyik este mehetnek el együtt moziba. Közös jellemzők Több sorozathoz egyet rendelünk Sergyán (OE NIK) AAO szeptember / 37

63 Metszet Típusfeladatok 1 Adjuk meg két természetes szám osztóinak ismeretében az összes közös osztójukat. 2 Nyáron és télen is végeztünk madármegfigyeléseket a Balatonon. Ismerjük, hogy nyáron, illetve télen mely madárfajok fordultak elő. Állapítsuk meg ezek alapján, hogy melyek a nem költöző madarak. 3 Négy ember heti szabad estéi ismeretében állapítsuk meg, hogy a héten melyik este mehetnek el együtt moziba. Közös jellemzők Több sorozathoz egyet rendelünk Két sorozat elemei közül azokat kell kiválogatnunk, amelyek mindkettőben előfordulnak Sergyán (OE NIK) AAO szeptember / 37

64 Metszet Megvalósítási ötlet Válogassuk ki az egyik sorozat (X ) azon elemeit, amelyek a másikban (Y ) is előfordulnak Sergyán (OE NIK) AAO szeptember / 37

65 Metszet Megvalósítási ötlet Válogassuk ki az egyik sorozat (X ) azon elemeit, amelyek a másikban (Y ) is előfordulnak Ehhez egy kiválogatás és egy eldöntés tételt kell egymásba építeni Sergyán (OE NIK) AAO szeptember / 37

66 Metszet Bemenet X : Egyik feldolgozandó tömb Y : Másik feldolgozandó tömb M: X elemeinek száma N: Y elemeinek száma Sergyán (OE NIK) AAO szeptember / 37

67 Metszet Bemenet X : Egyik feldolgozandó tömb Y : Másik feldolgozandó tömb M: X elemeinek száma N: Y elemeinek száma Kimenet Z: Eredmény tömb DB: Z elemeinek száma Sergyán (OE NIK) AAO szeptember / 37

68 Metszet Bemenet X : Egyik feldolgozandó tömb Y : Másik feldolgozandó tömb M: X elemeinek száma N: Y elemeinek száma Kimenet Z: Eredmény tömb DB: Z elemeinek száma Pszeudokód Eljárás Metszet(M, X, N, Y, DB, Z) DB := 0 Ciklus i := 1-től M-ig j := 1 Ciklus amíg j N és X [i] Y [j] j := j + 1 Ha j N akkor DB := DB + 1 Z[DB] := X [i] Elágazás vége Eljárás vége Sergyán (OE NIK) AAO szeptember / 37

69 Metszet Megjegyzések Kis módosítással a metszet tétel nem csak két sorozat közös elemeinek meghatározására alkalmazható Sergyán (OE NIK) AAO szeptember / 37

70 Metszet Megjegyzések Kis módosítással a metszet tétel nem csak két sorozat közös elemeinek meghatározására alkalmazható Eldöntés: van-e két sorozatnak közös eleme? Sergyán (OE NIK) AAO szeptember / 37

71 Metszet Megjegyzések Kis módosítással a metszet tétel nem csak két sorozat közös elemeinek meghatározására alkalmazható Eldöntés: van-e két sorozatnak közös eleme? Kiválasztás: adjuk meg a két sorozat egyik közös elemét (ha tudjuk, hogy van ilyen) Sergyán (OE NIK) AAO szeptember / 37

72 Metszet Megjegyzések Kis módosítással a metszet tétel nem csak két sorozat közös elemeinek meghatározására alkalmazható Eldöntés: van-e két sorozatnak közös eleme? Kiválasztás: adjuk meg a két sorozat egyik közös elemét (ha tudjuk, hogy van ilyen) Keresés: ha van, akkor adjuk meg a két sorozat egyik közös elemét Sergyán (OE NIK) AAO szeptember / 37

73 Metszet Megjegyzések Kis módosítással a metszet tétel nem csak két sorozat közös elemeinek meghatározására alkalmazható Eldöntés: van-e két sorozatnak közös eleme? Kiválasztás: adjuk meg a két sorozat egyik közös elemét (ha tudjuk, hogy van ilyen) Keresés: ha van, akkor adjuk meg a két sorozat egyik közös elemét Megszámolás: hány közös eleme van a két sorozatnak? Sergyán (OE NIK) AAO szeptember / 37

74 Metszet Keressük meg X egyik olyan elemét, amely benne van Y -ban is. Közös elem keresése Eljárás MetszetbeliElem(M, X, N, Y, VAN, E) i := 1 VAN :=hamis Ciklus amíg i M és VAN j := 1 Ciklus amíg j N és X [i] Y [j] j := j + 1 Ha j N akkor VAN :=igaz E := X [i] különben i := i + 1 Elágazás vége Eljárás vége Sergyán (OE NIK) AAO szeptember / 37

75 Összetett programozási tételek 1 Másolás 2 Kiválogatás 3 Szétválogatás 4 Metszet 5 Egyesítés 6 Összefuttatás Sergyán (OE NIK) AAO szeptember / 37

76 Egyesítés (unió) Típusfeladatok 1 Két szám prímosztóinak ismeretében adjuk meg legkisebb közös többszörösük prímosztóit. Sergyán (OE NIK) AAO szeptember / 37

77 Egyesítés (unió) Típusfeladatok 1 Két szám prímosztóinak ismeretében adjuk meg legkisebb közös többszörösük prímosztóit. 2 Egy iskola két földrajztanára órarendjének ismeretében adjuk meg azokat az órákat, amikor valamelyikük tud egy órát helyettesíteni. Sergyán (OE NIK) AAO szeptember / 37

78 Egyesítés (unió) Típusfeladatok 1 Két szám prímosztóinak ismeretében adjuk meg legkisebb közös többszörösük prímosztóit. 2 Egy iskola két földrajztanára órarendjének ismeretében adjuk meg azokat az órákat, amikor valamelyikük tud egy órát helyettesíteni. Közös jellemzők Két sorozathoz egy sorozatot rendel Sergyán (OE NIK) AAO szeptember / 37

79 Egyesítés (unió) Típusfeladatok 1 Két szám prímosztóinak ismeretében adjuk meg legkisebb közös többszörösük prímosztóit. 2 Egy iskola két földrajztanára órarendjének ismeretében adjuk meg azokat az órákat, amikor valamelyikük tud egy órát helyettesíteni. Közös jellemzők Két sorozathoz egy sorozatot rendel Azokat az elemeket keressük, amelyek a két sorozatból legalább az egyikben benne vannak Sergyán (OE NIK) AAO szeptember / 37

80 Egyesítés (unió) Bemenet X : Egyik feldolgozandó tömb Y : Másik feldolgozandó tömb M: X elemeinek száma N: Y elemeinek száma Sergyán (OE NIK) AAO szeptember / 37

81 Egyesítés (unió) Bemenet X : Egyik feldolgozandó tömb Y : Másik feldolgozandó tömb M: X elemeinek száma N: Y elemeinek száma Kimenet Z: Eredmény tömb DB: Z elemeinek száma Sergyán (OE NIK) AAO szeptember / 37

82 Egyesítés (unió) Bemenet X : Egyik feldolgozandó tömb Y : Másik feldolgozandó tömb M: X elemeinek száma N: Y elemeinek száma Kimenet Z: Eredmény tömb DB: Z elemeinek száma Pszeudokód Eljárás Egyesítés(M, X, N, Y, DB, Z) Z := X DB := M Ciklus j := 1-től N-ig i := 1 Ciklus amíg i M és X [i] Y [j] i := i + 1 Ha i > M akkor DB := DB + 1 Z[DB] := Y [j] Elágazás vége Eljárás vége Sergyán (OE NIK) AAO szeptember / 37

83 Egyesítés (unió) Kis módosítással készíthetünk olyan algoritmust, amely egy sorozatból halmazt készít, azaz egy sorozatot úgy alakít át, hogy az azonos elemek csak egyszer szerepeljenek. Sergyán (OE NIK) AAO szeptember / 37

84 Egyesítés (unió) Kis módosítással készíthetünk olyan algoritmust, amely egy sorozatból halmazt készít, azaz egy sorozatot úgy alakít át, hogy az azonos elemek csak egyszer szerepeljenek. Halmazfelsorolás készítés Eljárás HalmazfelsorolásKészítés(N, X, DB, Z) DB := 0 Ciklus i := 1-től N-ig j := 1 Ciklus amíg j DB és X [i] Z[j] j := j + 1 Ha j > DB akkor DB := DB + 1 Z[DB] := X [i] Elágazás vége Eljárás vége Sergyán (OE NIK) AAO szeptember / 37

85 Összetett programozási tételek 1 Másolás 2 Kiválogatás 3 Szétválogatás 4 Metszet 5 Egyesítés 6 Összefuttatás Sergyán (OE NIK) AAO szeptember / 37

86 Összefuttatás (rendezettek uniója) Típusfeladatok 1 Egy osztály lány-, illetve fiú tanulóinak névsora alapján álĺıtsuk elő az osztálynévsort. Sergyán (OE NIK) AAO szeptember / 37

87 Összefuttatás (rendezettek uniója) Típusfeladatok 1 Egy osztály lány-, illetve fiú tanulóinak névsora alapján álĺıtsuk elő az osztálynévsort. 2 Egy iskolában négy szakörre járnak tanulók (van aki többre is). A szakkörnévsorok alapján álĺıtsuk el a szakkörre járó tanulók névsorát. Sergyán (OE NIK) AAO szeptember / 37

88 Összefuttatás (rendezettek uniója) Típusfeladatok 1 Egy osztály lány-, illetve fiú tanulóinak névsora alapján álĺıtsuk elő az osztálynévsort. 2 Egy iskolában négy szakörre járnak tanulók (van aki többre is). A szakkörnévsorok alapján álĺıtsuk el a szakkörre járó tanulók névsorát. Közös jellemzők Az általános egyesítéshez képest itt specialitás, hogy mindegyik sorozat rendezett Sergyán (OE NIK) AAO szeptember / 37

89 Összefuttatás (rendezettek uniója) Bemenet X : Egyik feldolgozandó tömb Y : Másik feldolgozandó tömb M: X elemeinek száma N: Y elemeinek száma Sergyán (OE NIK) AAO szeptember / 37

90 Összefuttatás (rendezettek uniója) Bemenet X : Egyik feldolgozandó tömb Y : Másik feldolgozandó tömb M: X elemeinek száma N: Y elemeinek száma Kimenet Z: Eredmény tömb DB: Z elemeinek száma Sergyán (OE NIK) AAO szeptember / 37

91 Összefuttatás (rendezettek uniója) Bemenet X : Egyik feldolgozandó tömb Y : Másik feldolgozandó tömb M: X elemeinek száma N: Y elemeinek száma Kimenet Z: Eredmény tömb DB: Z elemeinek száma Pszeudokód Eljárás Összefuttatás(M, X, N, Y, DB, Z) i := 1; j := 1; DB := 0 Ciklus amíg (i M) és (j N) DB := DB + 1 Elágazás X [i] < Y [j] esetén Z[DB] := X [i]; i := i + 1 X [i] = Y [j] esetén Z[DB] := X [i]; i := i + 1; j := j + 1 X [i] > Y [j] esetén Z[DB] := Y [j]; j := j + 1 Elágazás vége Ciklus amíg i M DB := DB + 1; Z[DB] := X [i]; i := i + 1 Ciklus amíg j N DB := DB + 1; Z[DB] := Y [j]; j := j + 1 Eljárás vége Sergyán (OE NIK) AAO szeptember / 37

92 Összefuttatás (rendezettek uniója) Ha X [M] = Y [N], akkor az utolsó két ciklusra nincs szükség. Ezt a helyzetet magunk is előidézhetjük. Pszeudokód Eljárás Összefuttatás(M, X, N, Y, DB, Z) i := 1; j := 1; DB := 0 X [M + 1] := + ; Y [N + 1] := + Ciklus amíg (i < M + 1) vagy (j < N + 1) DB := DB + 1 Elágazás X [i] < Y [j] esetén Z[DB] := X [i]; i := i + 1 X [i] = Y [j] esetén Z[DB] := X [i]; i := i + 1; j := j + 1 X [i] > Y [j] esetén Z[DB] := Y [j]; j := j + 1 Elágazás vége Eljárás vége Sergyán (OE NIK) AAO szeptember / 37

93 Összefuttatás (rendezettek uniója) Ha nincs a két sorozatban azonos elem, akkor a megvalósítás még egyszerűbb. Pszeudokód Eljárás Összefuttatás(M, X, N, Y, DB, Z) i := 1; j := 1; DB := 0 X [M + 1] := + ; Y [N + 1] := + Ciklus amíg (i < M + 1) vagy (j < N + 1) DB := DB + 1 Ha X [i] < Y [j] akkor Z[DB] := X [i]; i := i + 1 különben Z[DB] := Y [j]; j := j + 1 Elágazás vége Eljárás vége Sergyán (OE NIK) AAO szeptember / 37

Objektum Orientált Programozás VII.

Objektum Orientált Programozás VII. Objektum Orientált Programozás VII. Összetett programozási tételek Programozási tételek összeépítése Feladatok ÓE-NIK, 2011 1 Hallgatói Tájékoztató A jelen bemutatóban található adatok, tudnivalók és információk

Részletesebben

Egyszerű programozási tételek

Egyszerű programozási tételek Egyszerű programozási tételek 2. előadás Sergyán Szabolcs sergyan.szabolcs@nik.uni-obuda.hu Óbudai Egyetem Neumann János Informatikai Kar 2011. szeptember 15. Sergyán (OE NIK) AAO 02 2011. szeptember 15.

Részletesebben

Programozás I. Egyszerű programozási tételek. Sergyán Szabolcs sergyan.szabolcs@nik.uni-obuda.hu

Programozás I. Egyszerű programozási tételek. Sergyán Szabolcs sergyan.szabolcs@nik.uni-obuda.hu Programozás I. 3. előadás Egyszerű programozási tételek Sergyán Szabolcs sergyan.szabolcs@nik.uni-obuda.hu Óbudai Egyetem Neumann János Informatikai Kar Alkalmazott Informatikai Intézet 2015. szeptember

Részletesebben

Programozás I. Egyszerű programozási tételek. Sergyán Szabolcs

Programozás I. Egyszerű programozási tételek. Sergyán Szabolcs Programozás I. 3. előadás Egyszerű programozási tételek Sergyán Szabolcs sergyan.szabolcs@nik.uni-obuda.hu Óbudai Egyetem Neumann János Informatikai Kar Alkalmazott Informatikai Intézet 2015. szeptember

Részletesebben

Informatikai tehetséggondozás:

Informatikai tehetséggondozás: Ég és Föld vonzásában a természet titkai Informatikai tehetséggondozás: Összetett programozási tételek 2 TÁMOP-4.2.3.-12/1/KONV Feladataink egy jelentős csoportjában több bemenő sorozat alapján egy sorozatot

Részletesebben

Bánsághi Anna 2014 Bánsághi Anna 1 of 68

Bánsághi Anna 2014 Bánsághi Anna 1 of 68 IMPERATÍV PROGRAMOZÁS Bánsághi Anna anna.bansaghi@mamikon.net 3. ELŐADÁS - PROGRAMOZÁSI TÉTELEK 2014 Bánsághi Anna 1 of 68 TEMATIKA I. ALAPFOGALMAK, TUDOMÁNYTÖRTÉNET II. IMPERATÍV PROGRAMOZÁS Imperatív

Részletesebben

Programozási tételek. PPT 2007/2008 tavasz.

Programozási tételek. PPT 2007/2008 tavasz. Programozási tételek szenasi.sandor@nik.bmf.hu PPT 2007/2008 tavasz http://nik.bmf.hu/ppt 1 Témakörök Strukturált programozás paradigma Alapvető programozási tételek Összetett programozási tételek Programozási

Részletesebben

Rekurzív algoritmusok

Rekurzív algoritmusok Rekurzív algoritmusok 11. előadás Sergyán Szabolcs sergyan.szabolcs@nik.uni-obuda.hu Óbudai Egyetem Neumann János Informatikai Kar 2011. november 14. Sergyán (OE NIK) AAO 11 2011. november 14. 1 / 32 Rekurzív

Részletesebben

Rendezések. Sergyán Szabolcs Óbudai Egyetem Neumann János Informatikai Kar október 24.

Rendezések. Sergyán Szabolcs Óbudai Egyetem Neumann János Informatikai Kar október 24. Rendezések 8. előadás Sergyán Szabolcs sergyan.szabolcs@nik.uni-obuda.hu Óbudai Egyetem Neumann János Informatikai Kar 2011. október 24. Sergyán (OE NIK) AAO 08 2011. október 24. 1 / 1 Felhasznált irodalom

Részletesebben

Algoritmizálás, adatmodellezés tanítása 2. előadás

Algoritmizálás, adatmodellezés tanítása 2. előadás Algoritmizálás, adatmodellezés tanítása 2. előadás Programozási tételek Mi az, hogy programozási tétel? Típusfeladat általános megoldása. Sorozat érték Sorozat sorozat Sorozat sorozatok Sorozatok sorozat

Részletesebben

Algoritmizálás, adatmodellezés tanítása 1. előadás

Algoritmizálás, adatmodellezés tanítása 1. előadás Algoritmizálás, adatmodellezés 1. előadás Az algoritmus fogalma végrehajtható (van hozzá végre-hajtó) lépésenként hajtható végre a lépések maguk is algoritmusok pontosan definiált, adott végre-hajtási

Részletesebben

Programozás I. 1. előadás: Algoritmusok alapjai. Sergyán Szabolcs

Programozás I. 1. előadás: Algoritmusok alapjai. Sergyán Szabolcs Programozás I. 1. előadás: Algoritmusok alapjai Sergyán Szabolcs sergyan.szabolcs@nik.uni-obuda.hu Óbudai Egyetem Neumann János Informatikai Kar Alkalmazott Informatikai Intézet 2015. szeptember 7. Sergyán

Részletesebben

Egyszerű programozási tételek

Egyszerű programozási tételek Egyszerű programozási tételek Sorozatszámítás Eljárás Sorozatszámítás(N, X, S) R R 0 Ciklus i 1-től N-ig R R művelet A[i] A : számokat tartalmazó tömb N : A tömb elemszáma R : Művelet eredménye Eldöntés

Részletesebben

9. előadás. Programozás-elmélet. Programozási tételek Elemi prog. Sorozatszámítás Eldöntés Kiválasztás Lin. keresés Megszámolás Maximum.

9. előadás. Programozás-elmélet. Programozási tételek Elemi prog. Sorozatszámítás Eldöntés Kiválasztás Lin. keresés Megszámolás Maximum. Programozási tételek Programozási feladatok megoldásakor a top-down (strukturált) programtervezés esetén három vezérlési szerkezetet használunk: - szekvencia - elágazás - ciklus Eddig megismertük az alábbi

Részletesebben

Programozás I. Metódusok C#-ban Egyszerű programozási tételek. Sergyán Szabolcs sergyan.szabolcs@nik.uni-obuda.hu

Programozás I. Metódusok C#-ban Egyszerű programozási tételek. Sergyán Szabolcs sergyan.szabolcs@nik.uni-obuda.hu Programozás I. 3. előadás Tömbök a C#-ban Metódusok C#-ban Egyszerű programozási tételek Sergyán Szabolcs sergyan.szabolcs@nik.uni-obuda.hu Óbudai Egyetem Neumann János Informatikai Kar Szoftvertechnológia

Részletesebben

Programozás I. Sergyán Szabolcs Óbudai Egyetem Neumann János Informatikai Kar szeptember 10.

Programozás I. Sergyán Szabolcs Óbudai Egyetem Neumann János Informatikai Kar szeptember 10. Programozás I. 1. előadás Sergyán Szabolcs sergyan.szabolcs@nik.uni-obuda.hu Óbudai Egyetem Neumann János Informatikai Kar 2012. szeptember 10. Sergyán (OE NIK) Programozás I. 2012. szeptember 10. 1 /

Részletesebben

ELEMI PROGRAMOZÁSI TÉTELEK

ELEMI PROGRAMOZÁSI TÉTELEK ELEMI PROGRAMOZÁSI TÉTELEK 1. FELADATMEGOLDÁS PROGRAMOZÁSI TÉTELEKKEL 1.1 A programozási tétel fogalma A programozási tételek típusalgoritmusok, amelyek alkalmazásával garantáltan helyes megoldást adhatunk

Részletesebben

Programozási tételek. Dr. Iványi Péter

Programozási tételek. Dr. Iványi Péter Programozási tételek Dr. Iványi Péter 1 Programozási tételek A programozási tételek olyan általános algoritmusok, melyekkel programozás során gyakran találkozunk. Az algoritmusok általában számsorozatokkal,

Részletesebben

Algoritmusok, adatszerkezetek, objektumok

Algoritmusok, adatszerkezetek, objektumok Algoritmusok, adatszerkezetek, objektumok 1. előadás Sergyán Szabolcs sergyan.szabolcs@nik.uni-obuda.hu Óbudai Egyetem Neumann János Informatikai Kar 2011. szeptember 14. Sergyán (OE NIK) AAO 01 2011.

Részletesebben

Objektumorientált Programozás VI.

Objektumorientált Programozás VI. Objektumorientált Programozás VI. Tömb emlékeztető Egyszerű programozási tételek Összetett programozási tételek V 1.0 ÓE-NIK, 2011 1 Hallgatói Tájékoztató A jelen bemutatóban található adatok, tudnivalók

Részletesebben

Programozási segédlet

Programozási segédlet Programozási segédlet Programozási tételek Az alábbiakban leírtam néhány alap algoritmust, amit ismernie kell annak, aki programozásra adja a fejét. A lista korántsem teljes, ám ennyi elég kell legyen

Részletesebben

Egyszerű programozási tételek

Egyszerű programozási tételek Egyszerű programozási tételek Sorozatszámítás tétele Például az X tömbben kövek súlyát tároljuk. Ha ki kellene számolni az összsúlyt, akkor az S = f(s, X(i)) helyére S = S + X(i) kell írni. Az f0 tartalmazza

Részletesebben

Pásztor Attila. Algoritmizálás és programozás tankönyv az emeltszintű érettségihez

Pásztor Attila. Algoritmizálás és programozás tankönyv az emeltszintű érettségihez Pásztor Attila Algoritmizálás és programozás tankönyv az emeltszintű érettségihez 9. ÖSSZETETT FELADATOK...111 9.1. ELEMI ALGORITMUSOK ÖSSZEÉPÍTÉSE...111 9.2. ÖSSZEFOGLALÁS...118 9.3. GYAKORLÓ FELADATOK...118

Részletesebben

Készítette: Nagy Tibor István Felhasznált irodalom: Kotsis Domokos: OOP diasor Zsakó L., Szlávi P.: Mikrológia 19.

Készítette: Nagy Tibor István Felhasznált irodalom: Kotsis Domokos: OOP diasor Zsakó L., Szlávi P.: Mikrológia 19. Készítette: Nagy Tibor István Felhasznált irodalom: Kotsis Domokos: OOP diasor Zsakó L., Szlávi P.: Mikrológia 19. Programkészítés Megrendelői igények begyűjtése Megoldás megtervezése (algoritmuskészítés)

Részletesebben

AAO 3. Csink László 2007

AAO 3. Csink László 2007 AAO 3 Csink László 2007 Algoritmus fogalma - ismétlés Az algoritmus egy eljárás (jóldefiniált utasítások véges halmaza), amelyet valamely feladat megoldására készítünk. A feladat egy adott kezdeti állapotból

Részletesebben

Adatszerkezetek. Nevezetes algoritmusok (Keresések, rendezések)

Adatszerkezetek. Nevezetes algoritmusok (Keresések, rendezések) Adatszerkezetek Nevezetes algoritmusok (Keresések, rendezések) Keresések A probléma általános megfogalmazása: Adott egy N elemű sorozat, keressük meg azt az elemet (határozzuk meg a helyét a sorozatban),

Részletesebben

Algoritmizálás, adatmodellezés tanítása 7. előadás

Algoritmizálás, adatmodellezés tanítása 7. előadás Algoritmizálás, adatmodellezés tanítása 7. előadás Oszd meg és uralkodj! Több részfeladatra bontás, amelyek hasonlóan oldhatók meg, lépései: a triviális eset (amikor nincs rekurzív hívás) felosztás (megadjuk

Részletesebben

Haladó rendezések. PPT 2007/2008 tavasz.

Haladó rendezések. PPT 2007/2008 tavasz. Haladó rendezések szenasi.sandor@nik.bmf.hu PPT 2007/2008 tavasz http://nik.bmf.hu/ppt 1 Témakörök Alapvető összehasonlító rendezések Shell rendezés Kupacrendezés Leszámláló rendezés Radix rendezés Edényrendezés

Részletesebben

Programozási alapismeretek 3. előadás

Programozási alapismeretek 3. előadás Programozási alapismeretek 3. előadás Tartalom Ciklusok specifikáció+ algoritmika +kódolás Egy bevezető példa a tömbhöz A tömb Elágazás helyett tömb Konstans tömbök 2/42 Ciklusok Feladat: Határozzuk meg

Részletesebben

15. tétel. Adatszerkezetek és algoritmusok vizsga Frissült: 2013. január 30.

15. tétel. Adatszerkezetek és algoritmusok vizsga Frissült: 2013. január 30. 15. tétel Adatszerkezetek és algoritmusok vizsga Frissült: 2013. január 30. Edényrendezés Tegyük fel, hogy tudjuk, hogy a bemenő elemek (A[1..n] elemei) egy m elemű U halmazból kerülnek ki, pl. " A[i]-re

Részletesebben

Felvételi tematika INFORMATIKA

Felvételi tematika INFORMATIKA Felvételi tematika INFORMATIKA 2016 FEJEZETEK 1. Természetes számok feldolgozása számjegyenként. 2. Számsorozatok feldolgozása elemenként. Egydimenziós tömbök. 3. Mátrixok feldolgozása elemenként/soronként/oszloponként.

Részletesebben

Bevezetés a programozásba I 4. gyakorlat. PLanG: Szekvenciális fájlkezelés. Szekvenciális fájlkezelés Fájlok használata

Bevezetés a programozásba I 4. gyakorlat. PLanG: Szekvenciális fájlkezelés. Szekvenciális fájlkezelés Fájlok használata Pázmány Péter Katolikus Egyetem Információs Technológiai Kar Bevezetés a programozásba I 4. gyakorlat PLanG: 2011.10.04. Giachetta Roberto groberto@inf.elte.hu http://people.inf.elte.hu/groberto Fájlok

Részletesebben

Programozási tételek. Jegyzet. Összeállította: Faludi Anita 2012.

Programozási tételek. Jegyzet. Összeállította: Faludi Anita 2012. Programozási tételek Jegyzet Összeállította: Faludi Anita 2012. Tartalomjegyzék Bevezetés... 3 Programozási tételek... 4 I. Elemi programozási tételek... 4 1. Sorozatszámítás (összegzés)... 4 2. Eldöntés...

Részletesebben

Programozási módszertan. Mohó algoritmusok

Programozási módszertan. Mohó algoritmusok PM-08 p. 1/17 Programozási módszertan Mohó algoritmusok Werner Ágnes Villamosmérnöki és Információs Rendszerek Tanszék e-mail: werner.agnes@virt.uni-pannon.hu PM-08 p. 2/17 Bevezetés Dinamikus programozás

Részletesebben

Információk. Ismétlés II. Ismétlés. Ismétlés III. A PROGRAMOZÁS ALAPJAI 2. Készítette: Vénné Meskó Katalin. Algoritmus. Algoritmus ábrázolása

Információk. Ismétlés II. Ismétlés. Ismétlés III. A PROGRAMOZÁS ALAPJAI 2. Készítette: Vénné Meskó Katalin. Algoritmus. Algoritmus ábrázolása 1 Információk 2 A PROGRAMOZÁS ALAPJAI 2. Készítette: Vénné Meskó Katalin Elérhetőség mesko.katalin@tfk.kefo.hu Fogadóóra: szerda 9:50-10:35 Számonkérés időpontok Április 25. 9 00 Május 17. 9 00 Június

Részletesebben

Informatikai tehetséggondozás:

Informatikai tehetséggondozás: Ég és Föld vonzásában a természet titkai Informatikai tehetséggondozás: Visszalépéses keresés korlátozással TÁMOP-4.2.3.-12/1/KONV A visszalépéses keresés (backtrack) a problémamegoldás igen széles területén

Részletesebben

MATEMATIKA ÉRETTSÉGI TÍPUSFELADATOK MEGOLDÁSAI KÖZÉP SZINT Számelmélet

MATEMATIKA ÉRETTSÉGI TÍPUSFELADATOK MEGOLDÁSAI KÖZÉP SZINT Számelmélet MATEMATIKA ÉRETTSÉGI TÍPUSFELADATOK MEGOLDÁSAI KÖZÉP SZINT Számelmélet A szürkített hátterű feladatrészek nem tartoznak az érintett témakörhöz, azonban szolgálhatnak fontos információval az érintett feladatrészek

Részletesebben

Informatikai tehetséggondozás:

Informatikai tehetséggondozás: Ég és Föld vonzásában a természet titkai Informatikai tehetséggondozás: Rendezések TÁMOP-4.2.3.-12/1/KONV-2012-0018 Az alapfeladat egy N elemű sorozat nagyság szerinti sorba rendezése. A sorozat elemei

Részletesebben

Visszalépéses keresés

Visszalépéses keresés Visszalépéses keresés Backtracking előadás http://nik.uni-obuda.hu/prog2 Szénási Sándor szenasi.sandor@nik.uni-obuda.hu Óbudai Egyetem,Neumann János Informatikai Kar Alapvető működése Továbbfejlesztési

Részletesebben

Informatikai tehetséggondozás:

Informatikai tehetséggondozás: Ég és Föld vonzásában a természet titkai Informatikai tehetséggondozás: Elemi programozási tételek 1 TÁMOP-4.2.3.-12/1/KONV-2012-0018 Feladataink egy jelentős csoportjában egyetlen bemenő sorozat alapján

Részletesebben

ő á ö é é í í ó ű á ő é é ő á á á é á é á é é é é ő é á á é é é é ö ö ú é íí ü é é ú ő ő é ó í é é é é ó í é é é ü ö ö á é ó é ő ó é á í ó é í ü é é á é é í é é ü é é á í ó í é ü ö ö é é ó ó é ó ó é á

Részletesebben

Í Á ÓÉ Ú Á ö ú ö ó ö ü ö ó ö ü ö ó ö ú ú ö ú ó ó ö ó ó ó ö ó ó ű ó ö ó ö ö ú ó ó ú ö Ö ó ö Ö ö ó ó ó ö ö ú ó ö ú ó ó ó ü ó ú ó ö ö ú ó ó Á Á ú ó ü ö Ö ó ö ö ó ö ú Á ö ú ö ö ö ö ö ú ö ú ü ö ú ű ö ö ó ó

Részletesebben

ő ö é Ü ü é Ó é é ú ü ö ű é é é é í Ü Ö ö ö ö ü ö é é Ó é é ő é ű í ű ő ő é é é ő é é é Ü Ü Ö Ö ő Ö é ü ö ü ő é é é ő ő é ü í ő é ő ő é é é é é é é é ő í ö é ö ő é ő é é ő é ü ő é é é é ú ő é é ő ő é é

Részletesebben

Í Í Á Í Á Ü Ö ü Á ü ó Í ó ű ó ü ó ó ó ú ű ó ó ü ű ó ó ű ó ü ü ü ű Í ű ü ü ű ó ű ü ó ű ü ű ű ü ű óé ű ü ó ű ű ü ü ó ú ü ű ó ü ü É ü ó ó ű ó ó ó ú ó ü ó ü ű ü ó ü ú ó Í ó ó ó ó ó ü ü ó ó ú ó ű ü ú ú ó ü

Részletesebben

Ü Á É É í Ő É Ő Á Ü Ó í Á É Ü Á É É í ŐÉ Ő Á Ü ü Ó Ó ö ő ö ö ö ő ó Ó ö ű ö ő ó Ó Ó ö ö Ó í ő ü ü ü Ü Á É í ő ő ü ú í ú Ü ű ö ü ö ü ü ú Ü í í ó ó É Ö ü ő ü ö ú Ü ö ö ü ő ő í ő Á Ó Ó í Ó ú ő ó í Ö Ó ö ö

Részletesebben

ó ö ó őé é ü ő É ö ó ő é ű Ü ú é ü é ő ó ó ó é ő ó é é ó ö ó őé é Ü ő ó ő ú ó é ű Ü ú é ü é ó ó ö é ő ó é ó é ó ó ó ö ó ó őé é ü ő ő őé ü é ó ó ő é ű ü ú é ü é ő ó ö ó é ó é é ó ó Ó Á Á Á é é é ő ő é é

Részletesebben

ö ö É Ú Á í ö í ö ö öé ö í ö ö Ö Ö Ö ó ó ó ö Ö í í í ó ó Ö í Ö ű í ö ő í ő ü Ö ű í í Ö ó í ű Ö ó í í ó ó ö í Ö Ö Ö ű ó ó ő ő ő ő í ó ó í ó ű ó Ö Ö ű í ő ú ó ő Ö Ö ö Ö ü Ő ö ü ó ó í í ö ü ő Ö ü í ú ó ó

Részletesebben

Mindent olyan egyszerűvé kell tenni, amennyire csak lehet, de nem egyszerűbbé.

Mindent olyan egyszerűvé kell tenni, amennyire csak lehet, de nem egyszerűbbé. HA 1 Mindent olyan egyszerűvé kell tenni, amennyire csak lehet, de nem egyszerűbbé. (Albert Einstein) HA 2 Halmazok HA 3 Megjegyzések A halmaz, az elem és az eleme fogalmakat nem definiáljuk, hanem alapfogalmaknak

Részletesebben

<... < s n. Írjuk le a megoldási módszert, és adjunk meg egy megjegyzésekkel ellátott Pascal-programot. A bemeneti adatokat helyesnek tekintjük.

<... < s n. Írjuk le a megoldási módszert, és adjunk meg egy megjegyzésekkel ellátott Pascal-programot. A bemeneti adatokat helyesnek tekintjük. Informatika felvételi feladatok - megoldásokkal A kolozsvári Babes-Bolyai Tudományegyetem Matematika és Informatika Karán először az idén lehetett informatikából felvételizni. Az új felvételi rendszer

Részletesebben

Gyakorló feladatok az 1. nagy zárthelyire

Gyakorló feladatok az 1. nagy zárthelyire Gyakorló feladatok az 1. nagy zárthelyire 2012. október 7. 1. Egyszerű, bevezető feladatok 1. Kérjen be a felhasználótól egy sugarat. Írja ki az adott sugarú kör kerületét illetve területét! (Elegendő

Részletesebben

Alkalmazott modul: Programozás. Programozási tételek, rendezések. Programozási tételek Algoritmusok és programozási tételek

Alkalmazott modul: Programozás. Programozási tételek, rendezések. Programozási tételek Algoritmusok és programozási tételek Eötvös Loránd Tudományegyetem Informatikai Kar Alkalmazott modul: Programozás, rendezések 2015 Giachetta Roberto groberto@inf.elte.hu http://people.inf.elte.hu/groberto Algoritmusok és programozási tételek

Részletesebben

Az egyszerűsítés utáni alak:

Az egyszerűsítés utáni alak: 1. gyszerűsítse a következő törtet, ahol b 6. 2 b 36 b 6 Az egyszerűsítés utáni alak: 2. A 2, 4 és 5 számjegyek mindegyikének felhasználásával elkészítjük az összes, különböző számjegyekből álló háromjegyű

Részletesebben

Láncolt listák. Egyszerű, rendezett és speciális láncolt listák. Programozás II. előadás. Szénási Sándor

Láncolt listák. Egyszerű, rendezett és speciális láncolt listák. Programozás II. előadás.  Szénási Sándor Láncolt listák Egyszerű, rendezett és speciális láncolt listák előadás http://nik.uni-obuda.hu/prog2 Szénási Sándor szenasi.sandor@nik.uni-obuda.hu Óbudai Egyetem,Neumann János Informatikai Kar Láncolt

Részletesebben

Programozási tételek feladatok

Programozási tételek feladatok 2016/11/22 03:56 1/6 Programozási tételek feladatok < Programozási feladatok Programozási tételek feladatok Szerző: Sallai ndrás Copyright Sallai ndrás, 2011 Licenc: NU Free Documentation License 1.3 Web:

Részletesebben

Adatszerkezetek I. 7. előadás. (Horváth Gyula anyagai felhasználásával)

Adatszerkezetek I. 7. előadás. (Horváth Gyula anyagai felhasználásával) Adatszerkezetek I. 7. előadás (Horváth Gyula anyagai felhasználásával) Bináris fa A fa (bináris fa) rekurzív adatszerkezet: BinFa:= Fa := ÜresFa Rekord(Elem,BinFa,BinFa) ÜresFa Rekord(Elem,Fák) 2/37 Bináris

Részletesebben

Webprogramozás szakkör

Webprogramozás szakkör Webprogramozás szakkör Előadás 5 (2012.04.09) Programozás alapok Eddig amit láttunk: Programozás lépései o Feladat leírása (specifikáció) o Algoritmizálás, tervezés (folyamatábra, pszeudokód) o Programozás

Részletesebben

Mindent olyan egyszerűvé kell tenni, amennyire csak lehet, de nem egyszerűbbé. (Albert Einstein) Halmazok 1

Mindent olyan egyszerűvé kell tenni, amennyire csak lehet, de nem egyszerűbbé. (Albert Einstein) Halmazok 1 Halmazok 1 Mindent olyan egyszerűvé kell tenni, amennyire csak lehet, de nem egyszerűbbé. (Albert Einstein) Halmazok 2 A fejezet legfontosabb elemei Halmaz megadási módjai Halmazok közti műveletek (metszet,

Részletesebben

Tartalom. Programozási alapismeretek. 11. előadás

Tartalom. Programozási alapismeretek. 11. előadás Tartalom Programozási alapismeretek 11. előadás Rendezési feladat specifikáció Egyszerű cserés Minimum-kiválasztásos Buborékos Javított buborékos Beillesztéses Javított beillesztéses Szétosztó Számlálva

Részletesebben

Bevezetés a programozásba I.

Bevezetés a programozásba I. Bevezetés a programozásba I. 3. gyakorlat Tömbök, programozási tételek Surányi Márton PPKE-ITK 2010.09.21. ZH! PlanG-ból papír alapú zárthelyit írunk el reláthatólag október 5-én! Tömbök Tömbök Eddig egy-egy

Részletesebben

Logikai szita (tartalmazás és kizárás elve)

Logikai szita (tartalmazás és kizárás elve) Logikai szita (tartalmazás és kizárás elve) Kombinatorika 5. előadás SZTE Bolyai Intézet Szeged, 2016. március 1. 5. ea. Logikai szita két halmazra 1/4 Középiskolás feladat. Egy 30 fős osztályban a matematikát

Részletesebben

Közismereti informatika I. 4. előadás

Közismereti informatika I. 4. előadás Közismereti informatika I. 4. előadás Rendezések Bemenet: N: Egész, X: Tömb(1..N: Egész) Kimenet: X: Tömb(1..N: Egész) Előfeltétel: Utófeltétel: Rendezett(X) és X=permutáció(X ) Az eredmény a bemenet egy

Részletesebben

MATEMATIKA ÉRETTSÉGI TÍPUSFELADATOK MEGOLDÁSAI KÖZÉPSZINT Számelmélet

MATEMATIKA ÉRETTSÉGI TÍPUSFELADATOK MEGOLDÁSAI KÖZÉPSZINT Számelmélet MATEMATIKA ÉRETTSÉGI TÍPUSFELADATOK MEGOLDÁSAI KÖZÉPSZINT Számelmélet A szürkített hátterű feladatrészek nem tartoznak az érintett témakörhöz, azonban szolgálhatnak fontos információval az érintett feladatrészek

Részletesebben

Bevezetés a programozáshoz I. Feladatok

Bevezetés a programozáshoz I. Feladatok Bevezetés a programozáshoz I. Feladatok 2006. szeptember 15. 1. Alapfogalmak 1.1. példa: Írjuk fel az A B, A C, (A B) C, és A B C halmazok elemeit, ha A = {0, 1}, B = {1, 2, 3}, C = {p, q}! 1.2. példa:

Részletesebben

Matematika (alsó tagozat)

Matematika (alsó tagozat) Matematika (alsó tagozat) Az értékelés elvei és eszközei A tanév során az értékelés alapja a tanulók állandó megfigyelése. Folyamatos fejlesztő célzatú szóbeli értékelés visszajelzést ad a tanuló számára

Részletesebben

Bevezetés a programozásba I.

Bevezetés a programozásba I. Bevezetés a programozásba I. 6. gyakorlat C++ alapok, szövegkezelés Surányi Márton PPKE-ITK 2010.10.12. Forrásfájlok: *.cpp fájlok Fordítás: a folyamat, amikor a forrásfájlból futtatható állományt állítunk

Részletesebben

BABEŞ-BOLYAI TUDOMÁNYEGYETEM KOLOZSVÁR. Informatika záróvizsga tankönyv

BABEŞ-BOLYAI TUDOMÁNYEGYETEM KOLOZSVÁR. Informatika záróvizsga tankönyv BABEŞ-BOLYAI TUDOMÁNYEGYETEM KOLOZSVÁR Informatika záróvizsga tankönyv 2013 1 4 I. Algoritmusok és programozás 1. Programozási tételek A feladatok feladatosztályokba sorolhatók a jellegük szerint. E feladatosztályokhoz

Részletesebben

Programoza s I. 10. elo ada s Rendezett to mbo k. Sergya n Szabolcs

Programoza s I. 10. elo ada s Rendezett to mbo k. Sergya n Szabolcs 10. elo ada s Rendezett to mbo k Sergya n Szabolcs sergyan.szabolcs@nik.uni-obuda.hu O budai Egyetem Neumann Ja nos Informatikai Kar Alkalmazott Informatikai Inte zet 1 / 5 Tartalom 1 Kerese sek rendezett

Részletesebben

INFORMATIKA ÉRETTSÉGI VIZSGAKÖVETELMÉNYEK AZ ÉRETTSÉGI VIZSGA RÉSZLETES TEMATIKÁJA

INFORMATIKA ÉRETTSÉGI VIZSGAKÖVETELMÉNYEK AZ ÉRETTSÉGI VIZSGA RÉSZLETES TEMATIKÁJA A témakörök előtt lévő számok az informatika tantárgy részletes vizsgakövetelménye és a vizsga leírása dokumentumban szereplő témaköröket jelölik. KÖVETELMÉNYEK 1.1. A kommunikáció 1.1.1. A kommunikáció

Részletesebben

B-fa. Felépítés, alapvető műveletek. Programozás II. előadás. Szénási Sándor.

B-fa. Felépítés, alapvető műveletek. Programozás II. előadás.  Szénási Sándor. B-fa Felépítés, alapvető műveletek előadás http://nik.uni-obuda.hu/prog2 Szénási Sándor szenasi.sandor@nik.uni-obuda.hu Óbudai Egyetem,Neumann János Informatikai Kar B-fa Felépítése Beszúrás művelete Törlés

Részletesebben

Programozás alapjai (ANSI C)

Programozás alapjai (ANSI C) Programozás alapjai (ANSI C) 1. Előadás vázlat A számítógép és programozása Dr. Baksáné dr. Varga Erika adjunktus Miskolci Egyetem, Informatikai Intézet Általános Informatikai Intézeti Tanszék www.iit.uni-miskolc.hu

Részletesebben

Algoritmusok - pszeudókód... 1

Algoritmusok - pszeudókód... 1 Tartalomjegyzék Algoritmusok - pszeudókód... 1 Abszolút érték... 1 Hányados ismételt kivonással... 1 Legnagyobb közös osztó... 1 Páros számok szűrése... 2 Palindrom számok... 2 Orosz szorzás... 2 Minimum

Részletesebben

Objektumorientált paradigma és a programfejlesztés

Objektumorientált paradigma és a programfejlesztés Objektumorientált paradigma és a programfejlesztés Vámossy Zoltán vamossy.zoltan@nik.uni-obuda.hu Óbudai Egyetem Neumann János Informatikai Kar Ficsor Lajos (Miskolci Egyetem) prezentációja alapján Objektumorientált

Részletesebben

RSA algoritmus. P(M) = M e mod n. S(C) = C d mod n. A helyesség igazoláshoz szükséges számelméleti háttér. a φ(n) = 1 mod n, a (a 1,a 2,...

RSA algoritmus. P(M) = M e mod n. S(C) = C d mod n. A helyesség igazoláshoz szükséges számelméleti háttér. a φ(n) = 1 mod n, a (a 1,a 2,... RSA algoritmus 1. Vegyünk véletlenszerűen két különböző nagy prímszámot, p-t és q-t. 2. Legyen n = pq. 3. Vegyünk egy olyan kis páratlan e számot, amely relatív prím φ(n) = (p 1)(q 1)-hez. 4. Keressünk

Részletesebben

Tartalomjegyzék Algoritmusok - pszeudókód... 1 42

Tartalomjegyzék Algoritmusok - pszeudókód... 1 42 Tartalomjegyzék Algoritmusok - pszeudókód... 1 42 Abszolút érték...1 Hányados ismételt kivonással...1 Legnagyobb közös osztó... 1 2 Páros számok szűrése...2 Palindrom számok... 2 3 Orosz szorzás...3 Minimum

Részletesebben

Adatszerkezetek 2. Dr. Iványi Péter

Adatszerkezetek 2. Dr. Iványi Péter Adatszerkezetek 2. Dr. Iványi Péter 1 Hash tábla A bináris fáknál O(log n) a legjobb eset a keresésre. Ha valamilyen közvetlen címzést használunk, akkor akár O(1) is elérhető. A hash tábla a tömb általánosításaként

Részletesebben

Alkalmazott modul: Programozás. Programozási tételek, rendezések Giachetta Roberto

Alkalmazott modul: Programozás. Programozási tételek, rendezések Giachetta Roberto Eötvös Loránd Tudományegyetem Informatikai Kar Alkalmazott modul: Programozás Programozási tételek, rendezések 2015 Giachetta Roberto groberto@inf.elte.hu http://people.inf.elte.hu/groberto Algoritmusok

Részletesebben

Tartalomjegyzék Algoritmusok - pszeudókód... 1 42

Tartalomjegyzék Algoritmusok - pszeudókód... 1 42 Tartalomjegyzék Algoritmusok - pszeudókód... 1 42 Abszolút érték...1 Hányados ismételt kivonással...1 Legnagyobb közös osztó... 1 2 Páros számok szűrése...2 Palindrom számok...2 Orosz szorzás...3 Minimum

Részletesebben

Sorozat érték típusú programozási tételek

Sorozat érték típusú programozási tételek Sorozat érték típusú programozási tételek A soron következő specifikációk és algoritmusok mind olyan típusfeladatokhoz kötődnek, amik igazán sűrűn előfordulhatnak a gyakorlatban. Meg kell keresni valamit,

Részletesebben

Adatszerkezetek Tömb, sor, verem. Dr. Iványi Péter

Adatszerkezetek Tömb, sor, verem. Dr. Iványi Péter Adatszerkezetek Tömb, sor, verem Dr. Iványi Péter 1 Adat Adat minden, amit a számítógépünkben tárolunk és a külvilágból jön Az adatnak két fontos tulajdonsága van: Értéke Típusa 2 Adat típusa Az adatot

Részletesebben

Hasító táblázatok. Hasító függvények, kulcsütközés kezelése. Programozás II. előadás. Szénási Sándor

Hasító táblázatok. Hasító függvények, kulcsütközés kezelése. Programozás II. előadás.  Szénási Sándor Hasító táblázatok Hasító függvények, kulcsütközés kezelése előadás http://nik.uni-obuda.hu/prog2 Szénási Sándor szenasi.sandor@nik.uni-obuda.hu Óbudai Egyetem,Neumann János Informatikai Kar Felépítése

Részletesebben

Rekurzió. Dr. Iványi Péter

Rekurzió. Dr. Iványi Péter Rekurzió Dr. Iványi Péter 1 Függvényhívás void f3(int a3) { printf( %d,a3); } void f2(int a2) { f3(a2); a2 = (a2+1); } void f1() { int a1 = 1; int b1; b1 = f2(a1); } 2 Függvényhívás void f3(int a3) { printf(

Részletesebben

Rendezések. A rendezési probléma: Bemenet: Kimenet: n számot tartalmazó (a 1,a 2,,a n ) sorozat

Rendezések. A rendezési probléma: Bemenet: Kimenet: n számot tartalmazó (a 1,a 2,,a n ) sorozat 9. Előadás Rendezések A rendezési probléma: Bemenet: n számot tartalmazó (a 1,a 2,,a n ) sorozat Kimenet: a bemenő sorozat olyan (a 1, a 2,,a n ) permutációja, hogy a 1 a 2 a n 2 Rendezések Általánosabban:

Részletesebben

Programozási nyelvek a közoktatásban alapfogalmak I. előadás

Programozási nyelvek a közoktatásban alapfogalmak I. előadás Programozási nyelvek a közoktatásban alapfogalmak I. előadás Szempontok Programozási nyelvek osztályozása Felhasználói kör (amatőr, professzionális) Emberközelség (gépi nyelvektől a természetes nyelvekig)

Részletesebben

Ajánlott elemi feladatok az AAO tárgyhoz 41 feladat

Ajánlott elemi feladatok az AAO tárgyhoz 41 feladat Ajánlott elemi feladatok az AAO tárgyhoz 41 feladat Ha a feladat értelmezésével kapcsolatban probléma merül fel a vizsgán, meg kell kérdezni a vizsgáztató tanárt a megoldás megkezdés eltt. A feladatokat

Részletesebben

1. Feladat: beolvas két számot úgy, hogy a-ba kerüljön a nagyobb

1. Feladat: beolvas két számot úgy, hogy a-ba kerüljön a nagyobb 1. Feladat: beolvas két számot úgy, hogy a-ba kerüljön a nagyobb #include main() { int a, b; printf( "a=" ); scanf( "%d", &a ); printf( "b=" ); scanf( "%d", &b ); if( a< b ) { inttmp = a; a =

Részletesebben

A 2011/2012 tanévi Országos Középiskolai Tanulmányi Verseny első forduló feladatainak megoldása. INFORMATIKÁBÓL II. (programozás) kategóriában

A 2011/2012 tanévi Országos Középiskolai Tanulmányi Verseny első forduló feladatainak megoldása. INFORMATIKÁBÓL II. (programozás) kategóriában Oktatási Hivatal A 2011/2012 tanévi Országos Középiskolai Tanulmányi Verseny első forduló feladatainak megoldása INFORMATIKÁBÓL II. (programozás) kategóriában Kérjük a tisztelt tanár kollégákat, hogy a

Részletesebben

Gyakorló feladatok ZH-ra

Gyakorló feladatok ZH-ra Algoritmuselmélet Schlotter Ildi 2011. április 6. ildi@cs.bme.hu Gyakorló feladatok ZH-ra Nagyságrendek 1. Egy algoritmusról tudjuk, hogy a lépésszáma O(n 2 ). Lehetséges-e, hogy (a) minden páros n-re

Részletesebben

Bevezetés a programozásba

Bevezetés a programozásba Bevezetés a programozásba 1. Előadás Bevezetés, kifejezések http://digitus.itk.ppke.hu/~flugi/ Egyre precízebb A programozás természete Hozzál krumplit! Hozzál egy kiló krumplit! Hozzál egy kiló krumplit

Részletesebben

Algoritmusok pszeudókód... 1

Algoritmusok pszeudókód... 1 Tartalomjegyzék Algoritmusok pszeudókód... 1 Abszolút érték... 1 Hányados ismételt kivonással... 1 Legnagyobb közös osztó... 2 Páros számok szűrése... 2 Palindrom számok... 2 Orosz szorzás... 3 Minimum

Részletesebben

Informatikai tehetséggondozás:

Informatikai tehetséggondozás: Ég és Föld vonzásában a természet titkai Informatikai tehetséggondozás: isszalépéses keresés TÁMOP-4.2.3.-12/1/KON A visszalépéses keresés (backtrack) a problémamegoldás igen széles területén alkalmazható

Részletesebben

Készítette: Ernyei Kitti. Halmazok

Készítette: Ernyei Kitti. Halmazok Halmazok Jelölések: A halmazok jele általában nyomtatott nagybetű: A, B, C Az x eleme az A halmaznak: Az x nem eleme az A halmaznak: Az A halmaz az a, b, c elemekből áll: A halmazban egy elemet csak egyszer

Részletesebben

Dr. Schuster György február / 32

Dr. Schuster György február / 32 Algoritmusok és magvalósítások Dr. Schuster György OE-KVK-MAI schuster.gyorgy@kvk.uni-obuda.hu 2015. február 10. 2015. február 10. 1 / 32 Algoritmus Alapfogalmak Algoritmus Definíció Algoritmuson olyan

Részletesebben

Tömbök kezelése. Példa: Vonalkód ellenőrzőjegyének kiszámítása

Tömbök kezelése. Példa: Vonalkód ellenőrzőjegyének kiszámítása Tömbök kezelése Példa: Vonalkód ellenőrzőjegyének kiszámítása A számokkal jellemzett adatok, pl. személyi szám, adószám, taj-szám, vonalkód, bankszámlaszám esetében az elírásból származó hibát ún. ellenőrző

Részletesebben

I. ALAPALGORITMUSOK. I. Pszeudokódban beolvas n prim igaz minden i 2,gyök(n) végezd el ha n % i = 0 akkor prim hamis

I. ALAPALGORITMUSOK. I. Pszeudokódban beolvas n prim igaz minden i 2,gyök(n) végezd el ha n % i = 0 akkor prim hamis I. ALAPALGORITMUSOK 1. Prímszámvizsgálat Adott egy n természetes szám. Írjunk algoritmust, amely eldönti, hogy prímszám-e vagy sem! Egy számról úgy fogjuk eldönteni, hogy prímszám-e, hogy megvizsgáljuk,

Részletesebben

Programozás alapjai C nyelv 8. gyakorlat. Mutatók és címek (ism.) Indirekció (ism)

Programozás alapjai C nyelv 8. gyakorlat. Mutatók és címek (ism.) Indirekció (ism) Programozás alapjai C nyelv 8. gyakorlat Szeberényi Imre BME IIT Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I. 2005.11.07. -1- Mutatók és címek (ism.) Minden változó és függvény

Részletesebben

GRÁFELMÉLET. 7. előadás. Javító utak, javító utak keresése, Edmonds-algoritmus

GRÁFELMÉLET. 7. előadás. Javító utak, javító utak keresése, Edmonds-algoritmus GRÁFELMÉLET 7. előadás Javító utak, javító utak keresése, Edmonds-algoritmus Definíció: egy P utat javító útnak nevezünk egy M párosításra nézve, ha az út páratlan hosszú, kezdő- és végpontjai nem párosítottak,

Részletesebben

Mutatók és címek (ism.) Programozás alapjai C nyelv 8. gyakorlat. Indirekció (ism) Néhány dolog érthetőbb (ism.) Változók a memóriában

Mutatók és címek (ism.) Programozás alapjai C nyelv 8. gyakorlat. Indirekció (ism) Néhány dolog érthetőbb (ism.) Változók a memóriában Programozás alapjai C nyelv 8. gyakorlat Szeberényi mre BME T Programozás alapjai. (C nyelv, gyakorlat) BME-T Sz.. 2005.11.07. -1- Mutatók és címek (ism.) Minden változó és függvény

Részletesebben

Programozás alapjai 9. előadás. Wagner György Általános Informatikai Tanszék

Programozás alapjai 9. előadás. Wagner György Általános Informatikai Tanszék 9. előadás Wagner György Általános Informatikai Tanszék Leszámoló rendezés Elve: a rendezett listában a j-ik kulcs pontosan j-1 kulcsnál lesz nagyobb. (Ezért ha egy kulcsról tudjuk, hogy 27 másiknál nagyobb,

Részletesebben

7. Számelmélet. 1. Lehet-e négyzetszám az a pozitív egész szám, amelynek tízes számrendszerbeli alakjában 510 darab 1-es és valahány 0 szerepel?

7. Számelmélet. 1. Lehet-e négyzetszám az a pozitív egész szám, amelynek tízes számrendszerbeli alakjában 510 darab 1-es és valahány 0 szerepel? 7. Számelmélet I. Nulladik ZH-ban láttuk: 1. Lehet-e négyzetszám az a pozitív egész szám, amelynek tízes számrendszerbeli alakjában 510 darab 1-es és valahány 0 szerepel? ELTE 2006. október 27. (matematika

Részletesebben

Véges állapotú gépek (FSM) tervezése

Véges állapotú gépek (FSM) tervezése Véges állapotú gépek (FSM) tervezése F1. A 2. gyakorlaton foglalkoztunk a 3-mal vagy 5-tel osztható 4 bites számok felismerésével. Abban a feladatban a bemenet bitpárhuzamosan, azaz egy időben minden adatbit

Részletesebben