Összetett programozási tételek
|
|
- Balázs Papp
- 7 évvel ezelőtt
- Látták:
Á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. Ö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észletesebbenEgyszerű 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észletesebbenProgramozá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észletesebbenProgramozá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észletesebbenInformatikai tehetséggondozás:
Ég és Föld vonzásában a természet titkai Informatikai tehetséggondozás: Összetett programozási tételek 1 TÁMOP-4.2.3.-12/1/KONV Feladataink egy jelentős csoportjában egyetlen bemenő sorozat alapján egy
RészletesebbenInformatikai 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Összetett programozási tételek 2.
Belépő a tudás közösségébe Informatika szakköri segédanyag Összetett programozási tételek 2. Heizlerné Bakonyi Viktória, Horváth Győző, Menyhárt László, Szlávi Péter, Törley Gábor, Zsakó László Szerkesztő:
RészletesebbenBá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észletesebbenProgramozá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Összetett programozási tételek Rendezések Keresések PT egymásra építése. 10. előadás. Programozás-elmélet. Programozás-elmélet 10.
Összetett programozási tételek Sorozathoz sorozatot relő feladatokkal foglalkozunk. A bemenő sorozatot le kell másolni, s közben az elemekre vonatkozó átalakításokat lehet végezni rajta: Input : n N 0,
RészletesebbenRendezé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észletesebbenRekurzí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észletesebbenAlgoritmizá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észletesebbenElőfeltétel: legalább elégséges jegy Diszkrét matematika II. (GEMAK122B) tárgyból
ÜTEMTERV Programozás-elmélet c. tárgyhoz (GEMAK233B, GEMAK233-B) BSc gazdaságinformatikus, programtervező informatikus alapszakok számára Óraszám: heti 2+0, (aláírás+kollokvium, 3 kredit) 2019/20-es tanév
RészletesebbenProgramozá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észletesebbenEgyszerű 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észletesebbenAlgoritmizá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észletesebbenProgramozá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észletesebben9. 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észletesebbenProgramozá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észletesebbenProgramozá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észletesebbenAlgoritmusok, 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észletesebbenELEMI 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észletesebbenAz összetett programozási tételek is egy tőről fakadnak
Az összetett programozási tételek is egy tőről fakadnak Zsakó László 1, Törley Gábor 2, Szlávi Péter 3 1 zsako@caesar.elte.hu, 2 pezsgo@inf.elte.hu, 3 szlavi@elte.hu ELTE IK Absztrakt. A programozás tanulás
RészletesebbenProgramozá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észletesebbenObjektumorientá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észletesebbenAlgoritmizálás, adatmodellezés tanítása 2. előadás
Algoritmizálás, adatmodellezés tanítása 2. előadás Másolás függvényszámítás Bemenet: N N, X H N, g:h G, F: G N G, f: G * xg G Kimenet: Y G N Előfeltétel: Utófeltétel: i(1 i N) Y=F(g(X 1 ),, g(x N )) f
RészletesebbenAdatbázis és szoftverfejlesztés elmélet. Programozási tételek
Adatbázis és szoftverfejlesztés elmélet Témakör 8. 1. Egy sorozathoz egy érték hozzárendelése Az összegzés tétele Összefoglalás Programozási tételek Adott egy számsorozat. Számoljuk és írassuk ki az elemek
RészletesebbenPROGRAMOZÁSI TÉTELEK
PROGRAMOZÁSI TÉTELEK Összegzés tétele Adott egy N elemű számsorozat: A(N). Számoljuk ki az elemek összegét! S:=0 Ciklus I=1-től N-ig S:=S+A(I) Megszámlálás tétele Adott egy N elemű sorozat és egy - a sorozat
RészletesebbenObjektumorientált Programozás VI.
Objektumorientált Programozás Metódusok Paraméterek átadása Programozási tételek Feladatok VI. ÓE-NIK, 2011 1 Hallgatói Tájékoztató A jelen bemutatóban található adatok, tudnivalók és információk a számonkérendő
RészletesebbenAdatbázis rendszerek Gy: Algoritmusok C-ben
Adatbázis rendszerek 1. 1. Gy: Algoritmusok C-ben 53/1 B ITv: MAN 2015.09.08 Alapalgoritmusok Összegzés Megszámlálás Kiválasztás Kiválasztásos rendezés Összefésülés Szétválogatás Gyorsrendezés 53/2 Összegzés
RészletesebbenPá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észletesebbenProgramozá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észletesebbenRekurzió. (Horváth Gyula és Szlávi Péter előadásai felhasználásával)
Rekurzió (Horváth Gyula és Szlávi Péter előadásai felhasználásával) Rekurzió és iteráció Balrekurzió Ha az eljárás első utasításaként szerepel a rekurzív hívás, akkor a rekurzió lényegében az első nem
RészletesebbenEgyszerű 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észletesebbenProgramozás II. előadás
Nem összehasonlító rendezések Nem összehasonlító rendezések Programozás II. előadás http://nik.uni-obuda.hu/prog2 Szénási Sándor Óbudai Egyetem,Neumann János Informatikai Kar Programozás II. 2 Rendezés
RészletesebbenAlgoritmizálás és adatmodellezés tanítása 2. előadás
Algoritmizálás és adatmodellezés tanítása 2. előadás Tartalom Összegzés vektorra, mátrixra Megszámolás vektorra, mátrixra Maximum-kiválasztás vektorra, mátrixra Eldöntés vektorra, mátrixra Kiválasztás
RészletesebbenAlgoritmusok és adatszerkezetek I. 4. előadás
Algoritmusok és adatszerkezetek I. 4. előadás A lista olyan sorozat, amelyben műveleteket egy kiválasztott, az ún. aktuális elemmel lehet végezni. A lista rendelkezik az alábbi műveletekkel: Üres: Lista
RészletesebbenKé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észletesebbenAlgoritmizálás. Horváth Gyula Szegedi Tudományegyetem Természettudományi és Informatikai Kar
Algoritmizálás Horváth Gyula Szegedi Tudományegyetem Természettudományi és Informatikai Kar horvath@inf.u-szeged.hu 0.1. Az algoritmikus tudás szintjei Ismeri (a megoldó algoritmust) Érti Le tudja pontosan
RészletesebbenProgramozás I. Matematikai lehetőségek Műveletek tömbökkel Egyszerű programozási tételek & gyakorlás V 1.0 OE-NIK,
Programozás I. Matematikai lehetőségek Műveletek tömbökkel Egyszerű programozási tételek & gyakorlás OE-NIK, 2013 1 Hallgatói Tájékoztató A jelen bemutatóban található adatok, tudnivalók és információk
RészletesebbenAlgoritmizálás és adatmodellezés tanítása 3. előadás
Algoritmizálás és adatmodellezés tanítása 3. előadás Szövegfájl Fájl típus A szövegfájl karakterek sorozata: input fájl Műveletei: nyit, zár, olvas, vége? output fájl Műveletei: nyit, zár, ír Pap Gáborné,
RészletesebbenAlgoritmizálás, adatmodellezés 1. előadás
Algoritmizálás, adatmodellezés 1. előadás Algoritmus-leíró eszközök Folyamatábra Irányított gráf, amely csomópontokból és őket összekötő élekből áll, egyetlen induló és befejező éle van, az induló élből
RészletesebbenAlgoritmusok és adatszerkezetek I. 1. előadás
Algoritmusok és adatszerkezetek I 1 előadás Típusok osztályozása Összetettség (strukturáltság) szempontjából: elemi (vagy skalár, vagy strukturálatlan) összetett (más szóval strukturált) Strukturálási
RészletesebbenAAO 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észletesebben6. gyakorlat Egydimenziós numerikus tömbök kezelése, tömbi algoritmusok
6. gyakorlat Egydimenziós numerikus tömbök kezelése, tömbi algoritmusok 1. feladat: Az EURO árfolyamát egy negyedéven keresztül hetente nyilvántartjuk (HUF / EUR). Írjon C programokat az alábbi kérdések
RészletesebbenVáltozók. Mennyiség, érték (v. objektum) szimbolikus jelölése, jelentése Tulajdonságai (attribútumai):
Python Változók Mennyiség, érték (v. objektum) szimbolikus jelölése, jelentése Tulajdonságai (attribútumai): Név Érték Típus Memóriacím A változó értéke (esetleg más attribútuma is) a program futása alatt
RészletesebbenVisszalépéses kiválogatás
elépő a tudás közösségébe Informatika szakköri segédanyag Heizlerné akonyi iktória, Horváth Győző, Menyhárt László, Szlávi Péter, Törley Gábor, Zsakó László Szerkesztő: Abonyi-Tóth Andor, Zsakó László
RészletesebbenAlgoritmizálás, adatmodellezés tanítása 1. előadás
Algoritmizálás, adatmodellezés tanítása 1. előadás Specifikáció A specifikáció elemei bemenet mit ismerünk? kimenet mire vagyunk kíváncsiak? előfeltétel mit tudunk az ismertekről? utófeltétel mi az összefüggés
RészletesebbenAdatszerkezetek. 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észletesebbenMegyei matematikaverseny évfolyam 2. forduló
Megyei matematikaverseny 0. 9. évfolyam. forduló. Mennyi a tizenkilencedik prím és a tizenkilencedik összetett szám szorzata? (A) 00 (B) 0 (C) 0 (D) 04 (E) Az előző válaszok egyike sem helyes.. Az 000
RészletesebbenMultihalmaz, intervallumhalmaz
Multihalmaz, intervallumhalmaz Halmaz féleségek 1. Halmaz Gyümölcsök: {alma,körte,szilva,barack} 2. Multihalmaz Állatok: {(macska,4),(rigó,2),(galamb,3)} 3. Intervallumhalmaz diszjunkt Óráim: {[8-10],[13-14],[16-20)}
RészletesebbenAlgoritmizá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észletesebbenA rész (30 pont) A.1. Vajon mit csinál? (5 pont) A generál(n) algoritmus egy n természetes számot dolgoz fel (0 < n < 100).
BABEŞ-BOLYAI TUDOMÁNYEGYETEM MATEMATIKA-INFORMATIKA KAR Felvételi verseny - szeptember Informatika írásbeli A versenyzők figyelmébe: 1. Minden tömböt 1-től kezdődően indexelünk. 2. A rácstesztekre (A rész)
RészletesebbenAlgoritmizálás és adatmodellezés tanítása 6. előadás
Algoritmizálás és adatmodellezés tanítása 6. előadás Összetett típusok 1. Rekord 2. Halmaz (+multihalmaz, intervallumhalmaz) 3. Tömb (vektor, mátrix) 4. Szekvenciális file (input, output) Pap Gáborné,
RészletesebbenHaladó 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észletesebbenProgramozá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észletesebbenAdatszerkezetek II. 10. előadás
Adatszerkezetek II. 10. előadás Kombinatorikai algoritmusok A kombinatorika: egy véges halmaz elemeinek valamilyen szabály alapján történő csoportosításával, kiválasztásával, sorrendbe rakásával foglalkozik
RészletesebbenSzámelmélet, műveletek, egyenletek, algebrai kifejezések, egyéb
Számelmélet, műveletek, egyenletek, algebrai kifejezések, egyéb 2004_02/4 Tegyél * jelet a táblázat megfelelő rovataiba! Biztosan Lehet hogy, de nem biztos Lehetetlen a) b) c) Négy egymást követő természetes
RészletesebbenFelvételi vizsga mintatételsor Informatika írásbeli vizsga
BABEȘ BOLYAI TUDOMÁNYEGYETEM MATEMATIKA ÉS INFORMATIKA KAR A. tételsor (30 pont) Felvételi vizsga mintatételsor Informatika írásbeli vizsga 1. (5p) Egy x biten tárolt egész adattípus (x szigorúan pozitív
Részletesebben15. 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észletesebbenProgramozá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észletesebbenAlgoritmizálás és adatmodellezés 2. előadás
Algoritmizálás és adatmodellezés 2 előadás Összetett típusok 1 Rekord 2 Halmaz (+multialmaz, intervallumalmaz) 3 Tömb (vektor, mátrix) 4 Szekvenciális fájl (input, output) Pap Gáborné, Zsakó László: Algoritmizálás,
RészletesebbenFelvé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észletesebbenPROGRAMOZÁSMÓDSZERTAN
PROGRAMOZÁSMÓDSZERTAN 4. ELŐADÁS 2004 (VÁZLAT). A TÉTELEK SZIGNATÚRÁJÁRÓL.. Formája és célja Induljunk ki egy ismert tételből: Megszámolás(H *,F(H, )): Be: N N, X H *, T:H L Ki: Ef: Db N ez most nem érdekes
RészletesebbenBevezetés az informatikába
Bevezetés az informatikába 6. előadás Dr. Istenes Zoltán Eötvös Loránd Tudományegyetem Informatikai Kar Programozáselmélet és Szoftvertechnológiai Tanszék Matematikus BSc - I. félév / 2008 / Budapest Dr.
RészletesebbenBevezeté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észletesebbenBABEŞ-BOLYAI TUDOMÁNYEGYETEM MATEMATIKA-INFORMATIKA KAR Felvételi verseny - minta Informatika írásbeli
BABEŞ-BOLYAI TUDOMÁNYEGYETEM MATEMATIKA-INFORMATIKA KAR Felvételi verseny - minta Informatika írásbeli A versenyzők figyelmébe: 1. Minden tömböt 1-től kezdődően indexelünk. 2. A rácstesztekre (A rész)
RészletesebbenHalmaz típus Értékhalmaz:
Halmaz, multihalmaz Halmaz féleségek 1. Halmaz Gyümölcsök: {alma,körte,szilva,barack} 2. Multihalmaz Állatok: {(macska,4),(rigó,2),(galamb,3)} 3. Intervallumhalmaz diszjunkt Óráim: {[8-10],[13-14],[16-20)}
RészletesebbenHatékonyság 1. előadás
Hatékonyság 1. előadás Mi a hatékonyság Bevezetés A hatékonyság helye a programkészítés folyamatában: csak HELYES programra Erőforrásigény: a felhasználó és a fejlesztő szempontjából A hatékonyság mérése
RészletesebbenBevezetés a programozásba I 4. gyakorlat. PLanG: Szekvenciális fájlkezelés
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észletesebbenProgramozás alapjai 1.Gy: Algoritmizálás P R O
Programozás alapjai 1.Gy: Algoritmizálás. P R O A L A G 1/13 B ITv: MAN 2018.09.20 Algoritmus leírási módszerek Szöveges leírás Pszeudokód Folyamatábra Struktogram Jackson diagram 2/13 Folyamatábra elemek
RészletesebbenVisszalépéses keresés korlátozással
Belépő a tudás közösségébe Informatika szakköri segédanyag Visszalépéses keresés korlátozással Heizlerné Bakonyi Viktória, Horváth Győző, Menyhárt László, Szlávi Péter, Törley Gábor, Zsakó László Szerkesztő:
RészletesebbenBevezetés a programozásba I 3. gyakorlat. PLanG: Programozási tételek. Programozási tételek Algoritmusok
Pázmány Péter Katolikus Egyetem Információs Technológiai Kar Bevezetés a programozásba I 3. gyakorlat PLanG: 2011.09.27. Giachetta Roberto groberto@inf.elte.hu http://people.inf.elte.hu/groberto Algoritmusok
RészletesebbenGráfok 2. Legrövidebb utak, feszítőfák. Szoftvertervezés és -fejlesztés II. előadás. Szénási Sándor
Gráfok 2. Legrövidebb utak, feszítőfák előadás http://nik.uni-obuda.hu/sztf2 Szénási Sándor Óbudai Egyetem,Neumann János Informatikai Kar Legrövidebb utak keresése Minimális feszítőfa keresése Gráfok 2
RészletesebbenInformatikai 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észletesebbenInformatikai 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észletesebbenAlgoritmizálás, adatmodellezés tanítása 8. előadás
Algoritmizálás, adatmodellezés tanítása 8. előadás Elágazás és korlátozás A backtrack alkalmas-e optimális megoldás keresésére? Van költség, és a legkisebb költségű megoldást szeretnénk előállítani. Van
RészletesebbenAlkalmazott 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észletesebbenRekurzió. Működése, programtranszformációk. Programozás II. előadás. Szénási Sándor.
Rekurzió Működése, programtranszformáció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 Rekurzió Rekurzió alapjai Rekurzív
RészletesebbenVáltozók. Mennyiség, érték (v. objektum) szimbolikus jelölése, jelentése Tulajdonságai (attribútumai):
Javascript Változók Mennyiség, érték (v. objektum) szimbolikus jelölése, jelentése Tulajdonságai (attribútumai): Név Érték Típus Memóriacím A változó értéke (esetleg más attribútuma is) a program futása
RészletesebbenInformatikai tehetséggondozás:
Ég és Föld vonzásában a természet titkai Informatikai tehetséggondozás: isszalépéses kiválogatás TÁMOP-4.2.3.-12/1/KON isszalépéses kiválogatás 1. Az összes lehetséges sorrend Sokszor előfordul feladatként,
RészletesebbenA 2010/2011 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 2010/2011 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észletesebbenMATEMATIKA É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észletesebbenProgramozá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észletesebbenVisszalé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észletesebbenHALMAZOK TULAJDONSÁGAI,
Halmazok definíciója, megadása HALMAZOK TULAJDONSÁGAI, 1. A következő definíciók közül melyek határoznak meg egyértelműen egy-egy halmazt? a) A: a csoport tanulói b) B: Magyarország városai ma c) C: Pilinszky
RészletesebbenInformatikai 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észletesebbenA 2015/2016 tanévi Országos Középiskolai Tanulmányi Verseny első forduló javítási-értékelési útmutató. INFORMATIKA II. (programozás) kategória
Oktatási Hivatal 2015/2016 tanévi Országos Középiskolai Tanulmányi Verseny első forduló javítási-értékelési útmutató INFORMTIK II. (programozás) kategória Kérjük a tisztelt tanár kollégákat, hogy a dolgozatokat
RészletesebbenGyakorló 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észletesebbenA félév során előkerülő témakörök
A félév során előkerülő témakörök rekurzív algoritmusok rendező algoritmusok alapvető adattípusok, adatszerkezetek, és kapcsolódó algoritmusok dinamikus programozás mohó algoritmusok gráf algoritmusok
RészletesebbenInformá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Ü Á É É í Ő É Ő Á Ü Ó í Á É Ü Á É É í ŐÉ Ő Á Ü ü Ó Ó ö ő ö ö ö ő ó Ó ö ű ö ő ó Ó Ó ö ö Ó í ő ü ü ü Ü Á É í ő ő ü ú í ú Ü ű ö ü ö ü ü ú Ü í í ó ó É Ö ü ő ü ö ú Ü ö ö ü ő ő í ő Á Ó Ó í Ó ú ő ó í Ö Ó ö ö
RészletesebbenÍ Á ÓÉ Ú Á ö ú ö ó ö ü ö ó ö ü ö ó ö ú ú ö ú ó ó ö ó ó ó ö ó ó ű ó ö ó ö ö ú ó ó ú ö Ö ó ö Ö ö ó ó ó ö ö ú ó ö ú ó ó ó ü ó ú ó ö ö ú ó ó Á Á ú ó ü ö Ö ó ö ö ó ö ú Á ö ú ö ö ö ö ö ú ö ú ü ö ú ű ö ö ó ó
Részletesebbenő ö é Ü ü é Ó é é ú ü ö ű é é é é í Ü Ö ö ö ö ü ö é é Ó é é ő é ű í ű ő ő é é é ő é é é Ü Ü Ö Ö ő Ö é ü ö ü ő é é é ő ő é ü í ő é ő ő é é é é é é é é ő í ö é ö ő é ő é é ő é ü ő é é é é ú ő é é ő ő é é
RészletesebbenÍ Í Á Í Á Ü Ö ü Á ü ó Í ó ű ó ü ó ó ó ú ű ó ó ü ű ó ó ű ó ü ü ü ű Í ű ü ü ű ó ű ü ó ű ü ű ű ü ű óé ű ü ó ű ű ü ü ó ú ü ű ó ü ü É ü ó ó ű ó ó ó ú ó ü ó ü ű ü ó ü ú ó Í ó ó ó ó ó ü ü ó ó ú ó ű ü ú ú ó ü
Részletesebbenö ö É Ú Á í ö í ö ö öé ö í ö ö Ö Ö Ö ó ó ó ö Ö í í í ó ó Ö í Ö ű í ö ő í ő ü Ö ű í í Ö ó í ű Ö ó í í ó ó ö í Ö Ö Ö ű ó ó ő ő ő ő í ó ó í ó ű ó Ö Ö ű í ő ú ó ő Ö Ö ö Ö ü Ő ö ü ó ó í í ö ü ő Ö ü í ú ó ó
Részletesebbenő á ö é é í í ó ű á ő é é ő á á á é á é á é é é é ő é á á é é é é ö ö ú é íí ü é é ú ő ő é ó í é é é é ó í é é é ü ö ö á é ó é ő ó é á í ó é í ü é é á é é í é é ü é é á í ó í é ü ö ö é é ó ó é ó ó é á
Részletesebbenó ö ó őé é ü ő É ö ó ő é ű Ü ú é ü é ő ó ó ó é ő ó é é ó ö ó őé é Ü ő ó ő ú ó é ű Ü ú é ü é ó ó ö é ő ó é ó é ó ó ó ö ó ó őé é ü ő ő őé ü é ó ó ő é ű ü ú é ü é ő ó ö ó é ó é é ó ó Ó Á Á Á é é é ő ő é é
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.
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