You are on page 1of 237

Kovács Henriette

OKTATÁSI ÓRATERVEZETEK
ÓRA IDŐKERETE, MENETE, CÉLOK, DIDAKTIKAI FELADATOK,
NEVELÉSI-OKTATÁSI STRATÉGIA
(MÓDSZEREK, TANULÓI MUNKAFORMÁK, ESZKÖZÖK)
Kiadó:
Magyar Kultúra Emlékívek Kiadó

Főszerkesztő:
Kollár Ferenc

Kovács Henriette
OKTATÁSI ÓRATERVEZETEK
ÓRA IDŐKERETE, MENETE, CÉLOK, DIDAKTIKAI FELADATOK,
NEVELÉSI-OKTATÁSI STRATÉGIA
(MÓDSZEREK, TANULÓI MUNKAFORMÁK, ESZKÖZÖK)

ISBN:
978-615-5746-30-7

Minden jog fenntartva.


A kiadvány egyetlen részlete sem sokszorosítható
semmiféle formában a kiadó engedélye nélkül.
TARTALOMJEGYZÉK

Bevezetés ..............................................................................................................................................................................................................7
Óratervezet - Miért hasznosak a tömbök? ..............................................................................................................................................................9
Az óra cél- és feladatrendszere......................................................................................................................................................................... 10
Fejlesztendő készségek, képességek ............................................................................................................................................................................... 10
Fejlesztendő attitűd ........................................................................................................................................................................................................ 11
Az óra didaktikai feladatai ............................................................................................................................................................................... 12
Az óra menete.................................................................................................................................................................................................. 14
Feladatok ......................................................................................................................................................................................................... 30
Reflexió ........................................................................................................................................................................................................... 31
Óratervezet - A String osztály és a tömbök. Túlindexelés. ................................................................................................................................... 32
Az óra cél- és feladatrendszere......................................................................................................................................................................... 33
Fejlesztendő készségek, képességek ............................................................................................................................................................................... 33
Fejlesztendő attitűd ........................................................................................................................................................................................................ 34
Az óra didaktikai feladatai ............................................................................................................................................................................... 34
Az óra menete.................................................................................................................................................................................................. 36
Feladatok ......................................................................................................................................................................................................... 46
Reflexió ........................................................................................................................................................................................................... 47
Óratervezet - Tömb elemeinek alapértelmezett értékei. Tömb feltöltése. .............................................................................................................. 48
Az óra cél- és feladatrendszere......................................................................................................................................................................... 49
Fejlesztendő készségek, képességek ............................................................................................................................................................................... 50
Fejlesztendő attitűd ........................................................................................................................................................................................................ 50
Az óra didaktikai feladatai ............................................................................................................................................................................... 51
Az óra menete.................................................................................................................................................................................................. 53
Feladatok ......................................................................................................................................................................................................... 63
Reflexió ........................................................................................................................................................................................................... 64
Óratervezet - Tömb elemeinek feltöltése billentyűzetről, kiíratása vesszővel elválasztva. .................................................................................... 66
Az óra cél- és feladatrendszere......................................................................................................................................................................... 67
Fejlesztendő készségek, képességek ............................................................................................................................................................................... 67
Fejlesztendő attitűd ........................................................................................................................................................................................................ 67
Az óra didaktikai feladatai ............................................................................................................................................................................... 68
Az óra menete.................................................................................................................................................................................................. 70
Feladatok ......................................................................................................................................................................................................... 81
Reflexió ........................................................................................................................................................................................................... 82
Óratervezet - Tömb elemeinek kiíratása vesszővel elválasztva. Inicializáló blokk. ............................................................................................... 83
Az óra cél- és feladatrendszere......................................................................................................................................................................... 84
Fejlesztendő készségek, képességek ............................................................................................................................................................................... 85
Fejlesztendő attitűd ........................................................................................................................................................................................................ 85
Az óra didaktikai feladatai ............................................................................................................................................................................... 86
Az óra menete.................................................................................................................................................................................................. 88
Feladatok ....................................................................................................................................................................................................... 100
Reflexió ......................................................................................................................................................................................................... 101
Óratervezet - Véletlenszámok generálása. Tömb elemeinek feltöltése véletlenszámokkal. ................................................................................ 102
Az óra cél- és feladatrendszere....................................................................................................................................................................... 103
Fejlesztendő készségek, képességek ............................................................................................................................................................................. 104
Fejlesztendő attitűd ...................................................................................................................................................................................................... 104
Az óra didaktikai feladatai ............................................................................................................................................................................. 105
Az óra menete................................................................................................................................................................................................ 107
Feladatok ....................................................................................................................................................................................................... 121
Házi feladat ................................................................................................................................................................................................... 122
Reflexió ......................................................................................................................................................................................................... 124
Óratervezet - Alapvető adatgyűjtési és feldolgozási algoritmusok ...................................................................................................................... 126
Az óra cél- és feladatrendszere....................................................................................................................................................................... 127
Fejlesztendő készségek, képességek ............................................................................................................................................................................. 127
Fejlesztendő attitűd ...................................................................................................................................................................................................... 128
Az óra didaktikai feladatai ............................................................................................................................................................................. 129
Az óra menete................................................................................................................................................................................................ 131
Feladatok ....................................................................................................................................................................................................... 143
Reflexió ......................................................................................................................................................................................................... 144
Óratervezet - Maximumkiválasztás. Tömbök elemein végzett műveletek. .......................................................................................................... 146
Az óra cél- és feladatrendszere....................................................................................................................................................................... 147
Fejlesztendő készségek, képességek ............................................................................................................................................................................. 147
Fejlesztendő attitűd ...................................................................................................................................................................................................... 148
Az óra didaktikai feladatai ............................................................................................................................................................................. 149
Az óra menete................................................................................................................................................................................................ 151
Feladatok ....................................................................................................................................................................................................... 165
Reflexió ......................................................................................................................................................................................................... 166
Óratervezet - Összetett elemtípusú tömbök. Tömbelemek cseréje. ..................................................................................................................... 168
Az óra cél- és feladatrendszere....................................................................................................................................................................... 169
Fejlesztendő készségek, képességek ............................................................................................................................................................................. 170
Fejlesztendő attitűd ...................................................................................................................................................................................................... 170
Az óra didaktikai feladatai ............................................................................................................................................................................. 171
Az óra menete................................................................................................................................................................................................ 173
Feladatok ....................................................................................................................................................................................................... 191
Reflexió ......................................................................................................................................................................................................... 192
Óratervezet - Tömb elemeinek megfordítása. Gyakorlás. ................................................................................................................................... 193
Az óra cél- és feladatrendszere....................................................................................................................................................................... 194
Fejlesztendő készségek, képességek ............................................................................................................................................................................. 194
Fejlesztendő attitűd ...................................................................................................................................................................................................... 194
Az óra didaktikai feladatai ............................................................................................................................................................................. 196
Az óra menete................................................................................................................................................................................................ 198
Feladat ........................................................................................................................................................................................................... 208
Reflexió ......................................................................................................................................................................................................... 215
Foglalkozás tervezete – Az ismétlés - iteráció. Ciklusok fajtái, átalakíthatóságuk, alkalmazásuk. ...................................................................... 216
A foglalkozás cél- és feladatrendszere ........................................................................................................................................................... 217
Fejlesztendő készségek, képességek ............................................................................................................................................................................. 217
Fejlesztendő attitűd ...................................................................................................................................................................................................... 218
Az óra didaktikai feladatai ............................................................................................................................................................................. 219
A foglalkozás menete .................................................................................................................................................................................... 221
Feladatok ....................................................................................................................................................................................................... 236
BEVEZETÉS

A tanár szerepe kulcsfontosságú a pedagógiai, oktatási folyamat- a tanított generációknak segítik a tananyag befogadását. A gyor-
ban, mert a tanuló fejlődését közvetlenül befolyásolja. A tanári san változó informatika területén ez még fontosabb, mint más te-
munka során fejleszteni kell azokat a kompetenciákat, amelyek rületeken. A pedagógiai eszköztár fejlesztése elsősorban a tanu-
által a tanulók élet- és munkaképessé válnak, valamint nagyfokú lói visszajelzések, visszacsatolások alapján történik. Általános
támogatást kell nyújtani a tehetséges, a hátrányos helyzetű és a szabályok nincsenek egy-egy új módszer, nevelési elv használa-
fejlődési zavarokkal küzdő tanulóknak, hogy képességeikhez mér- tára, hiszen ami az egyik tanulócsoportban működik, az még nem
ten valósíthassák meg céljaikat. garantálja, hogy egy másikban is működőképes lesz.
Nagyon fontos a szakmai fejlődésért az elkötelezettség és szakmai A tanári tervező munka legkisebb egysége az órák, foglalkozások
felelősségvállalás. Munkánk során elengedhetetlen a szaktárgyi tervezete, mely tartalmazza az óra/foglalkozás általános adatait,
tudás naprakészen tartása. Az informatika területén pedig külö- tananyagát, cél- és feladatrendszerét, a fejlesztendő készségeket,
nösen fontos az önképzés és a folyamatos továbbképzés. képességeket, a fejlesztendő attitűdöt, az óra didaktikai felada-
A szakmai tartalom mellett a módszertani megújulás is nagyon tait, a tantárgyi kapcsolatokat, a felhasznált forrásokat; egy táb-
lényeges. Az informatikus hallgatók szinte egész életükben a vé- lázatban az óra/foglalkozás időkeretét, menetét, célját, didaktikai
get nem érő (tovább)tanulásra lesznek kényszerítve, így fontos, feladatait, a didaktikai feladatok megvalósításához a nevelési-
hogy mind a tanulási, mind pedig az értékelési folyamatokban oktatási stratégiát, azaz az alkalmazott módszereket, tanulói
már olyan eszközöket és módszereket alkalmazzunk, amelyek mo- munkaformákat, eszközöket; a táblaképet, a feladatokat és az első
tiválják őket, felkeltik érdeklődésüket. tíz óra esetén az órához tartozó reflexiókat. Ez a tanár személyes
tervezete, mely különböző formákat ölthet.
A pedagógiai munka releváns része a pedagógiai eszköztár fo-
lyamatos fejlesztése és megújítása is. A generációváltás, a meg- A könyvben található tizenegy tervezet formailag egységes, me-
változott világ mindig új kihívások elé állítja a pedagógust. A tár- lyek megalkotásakor az vezérelt, hogy az órák/foglalkozások me-
sadalmi változások arra kényszerítenek bennünket, hogy próbál- nete átlátható, egyértelmű, könnyen követhető, letisztult, ezáltal
junk meg olyan új módszereket és eszközöket alkalmazni, amelyek könnyen tanítható legyen. Ennek eléréséhez a vizualitást hívtam
segítségül.
7
A táblázatban az óra/foglalkozás menete szélesebb oszlopba ke- szintén egy napon, négy tanítási órán valósult meg. A tizenegye-
rült, hiszen itt található az oktatott tananyag, a konkrét feladatok, dik tervezet egy foglalkozás tervezete, hiszen a szakképzésről
a megoldások, a feltett kérdések és a várható válaszok. Abban az szóló 2019. évi LXXX. törvény értelmében a szakképzésben nem
esetben, ha nem tervezetet, hanem vázlatot írunk, akkor nem kell tanórákat, hanem foglalkozásokat tartunk.
feltüntetni a várható tanulói válaszokat. A célok, didaktikai fel- Az egész életen át tartó tanulással Life Long Learning (LLL) fo-
adatok külön oszlopban, az óra menete mellett találhatók, a ne- lyamatosan képezzük magunkat, korszerűsítsük és fejlesszük pe-
velési-oktatási stratégiát pedig, azaz az oktatási módszereket, a dagógiai és szakmai tudásunkat, így személyes példamutatással
tanulói munkaformákat és az eszközöket három oszlop helyett egy tudjuk alakítani a tanulók értékrendjét, pozitív tulajdonságait, a
oszlopban helyeztem el, megkülönböztetésükre halvány háttérszí- tanuláshoz és társaikhoz, valamint a későbbiekben a munkához
nezést alkalmaztam. Az oktatási módszereket a piros, a tanulói és a társadalomhoz való hozzáállásukat.
munkaformákat a kék, az eszközöket a sárga szín jelöli. A meg-
jegyzéseket sem külön oszlopba, hanem a nevelési-oktatási stra- Kovács Henriette
szakmai és köznevelési szakértő
tégia oszlopába helyeztem el, háttérszín nélkül.
Budapest, 2022.
Tíz tervezet óratervezet, melyek tartalmilag összefüggnek, az első
hat óratervezet egy tanítási napon hat tanítási órán, a többi négy

8
ÓRATERVEZET - MIÉRT HASZNOSAK A TÖMBÖK?

A pedagógus neve: Kovács Henriette Tantárgy: Adatbázis- és szoftverfejlesztés gyakorlat

A szakmacsoport száma és megnevezése: 7. Informatika Programozási nyelv: Java

A szakképesítés azonosító száma: 54 213 05 Fejlesztői környezet: NetBeans IDE 7.3

A szakképesítés megnevezése: Szoftverfejlesztő Osztály - csoport: I/13. S - SZ2

Iskolai rendszerű szakképzés (a szakképzési évfolyamok Az óra tananyaga: Miért hasznosak a tömbök?
száma: 2)

Szakmai követelménymodul: 10817-12 Hálózatok, programo-


zás és adatbázis-kezelés

9
Az óra cél- és feladatrendszere – Az algoritmikus gondolkodás fejlesztése: a tanulók önálló, rend-
szerezett, logikus gondolkodásának fejlesztése; a logikus gondol-
A fejlesztendő attitűd, készségek, képességek, a tanítandó ismere-
kodás lényeges a problémamegoldásban, és az algoritmusok elké-
tek (fogalmak, szabályok stb.) és az elérendő fejlesztési szint, tu- szítésében, kódolásában.
dásszint megnevezése: – Legyen képes a NetBeans fejlesztői környezet kényelmi funkciói-
– A tanuló tartsa be a számítógépes munka szabályait, különös tekin- nak készségszintű használatára.
tettel a balesetek megelőzésére. A berendezésekkel fegyelmezet- – Önálló munkára nevelés és felzárkóztatás: a NetBeans fejlesztői
ten, a használati utasításokat pontosan követve dolgozzon. Legyen környezet, a felhasználó tevékenységére azonnal reagál, így lehe-
tisztában a számítógépes környezet alapvető ergonómiai kérdései- tőséget teremt az egyéni ütemű tanulásra, a pontos, kitartó, fegyel-
vel, az egészségvédelem lehetőségeivel számítógépes munkakör- mezett munkára, a lemaradókkal való különleges foglalkozásra.
nyezetben. – Alkotó munkára nevelés: a végeredmény egy új termék, egy prog-
– Felkelteni és folyamatosan ébren tartani a tanulók érdeklődését a ram lesz.
szoftverfejlesztés iránt; rávezetni a tanulókat a tömb adatszerkezet – Az esztétikai készség fejlesztése: igény és készség a számítógépes
szükségességére, megismertetni és létrehozni ezt a gyors és haté- produktum esztétikus formájának kialakítására, a program helyes
kony listát, a tömböt, mindezzel hozzájárulva a tanulók logikus strukturálására.
gondolkodásának, problémamegoldásának, programozói szemléle- – Tudjon tömb típusú változót deklarálni, tömböt létrehozni, és ele-
tének kialakításához. Kialakítani a tanulókban az informatikai is- meit kiíratni.
mereteik folyamatos bővítésének és megújításának igényét. – Tudjon tömb elemeit tabulátorokkal elválasztva egymás mellett
– Korszerű alkalmazói készség kialakítása: meglévő, - Internet segít- megjeleníteni.
ségével - új alkalmazások kiválasztása a feladat tervezéséhez (Mic- – Legyen képes a tömbök elemeit elérni.
rosoft Office Excel, Structorizer), legyenek képesek arra, hogy
Fejlesztendő készségek, képességek
mindezeket célszerűen használják.
– Absztrakt gondolkodás, algoritmikus gondolkodás, alkalmazásvá-
lasztás, alkalmazói képesség, alkotó képesség, diagnosztizálás,

10
döntésképesség, eszközválasztás, hallott szakmai szöveg értése, hi- – Legyen képes alkalmazást (szoftvert) futtatni, tesztelni és magya-
bakeresés, logikus gondolkodás, megfigyelés, meggyőzőképesség, rázó megjegyzésekkel ellátni, előkészítve ezzel a dokumentáció el-
olvasott szakmai szöveg megértése angol nyelven, önállóság, ön- készítését.
ellenőrzés, precizitás, pontosság, problémamegoldás, programkód – Legyen képes programozási feladatot ellátni, (kódolni), Java prog-
írása, programválasztás, struktogram elemzése, struktogram készí- ramnyelven implementálni.
tése, szakmai nyelvű beszédkészség, szintaktika követése, vissza- – Legyen képes értelmezni és javítani a NetBeans által megjelenített
emlékezés. hibaüzeneteket.
– Legyen képes programjait úgy megírni, hogy azt később Ő maga
Fejlesztendő attitűd
is, vagy tanulótársa is fel tudja használni.
– Legyen képes: számítógépet kezelni, szoftvereket használni.
– Legyen képes eligazodni és tudjon keresni a Java hivatalos doku-
– Tudja önállóan használni a hálózatot és annak alapszolgáltatásait.
mentációjában.
Tudjon adatokat megkeresni, elérni a hálózati szolgáltatások alkal-
mazásával.
– Legyen képes az adott probléma megoldásához kiválasztani az ál-
tala ismert módszerek, eszközök és alkalmazások közül a megfele-
lőt.
– Ismerje fel és legyen képes különféle formákban megfogalmazni a
környezetében előforduló tevékenységek algoritmizálható részle-
teit.
– Legyen képes elemi és összetett adatok megkülönböztetésére, ke-
zelésére, használatára.
– Adott feladat megoldásához legyen képes algoritmusokat megfo-
galmazni, tervezni és megvalósítani.

11
Az óra didaktikai feladatai

 A figyelem felkeltése  Fokozatosság


 A jelenség elemzése  Motiváció
 A megoldás sokoldalú elemzése  Szemléletesség
 A tanulók informálása a tanulási célról  Ismétlés
 A tények elemzése  Visszacsatolás
 Aktivizálás  Új ismeret közlése
 Alkalmazás  Tudományosság
 Általánosítás  Megerősítés
 Az új ismerteket megalapozó tények biztosítása  Részösszefoglalás
 Ellenőrzés  Rendszerezés
 Értékelés  Információ gyűjtése
 Figyelem felkeltése  Gyakorlás
 Fogalomalkotás  Következtetés
 Absztrakció  Problémafelvetés
 Általánosítás  Rögzítés

Tantárgyi kapcsolatok: Adatbázis- és szoftverfejlesztés elmélet, Matematika, Angol, Hálózati ismeretek I., Informatikai alapismeretek

12
Felhasznált források (tankönyv, munkafüzet, feladat- és szöveggyűjtemény, digitális tananyag, online források, szakirodalom stb.):

Szerző(k) Cím Kiadó ISBN kód

Vég Csaba – dr. Juhász István Java – start! Logos 2000 963 03 9005 1
Vég Csaba Instant Java/Java EE/SOA I-II Logos 2000 978-963-06-2601-9
978-963-06-2602-6
Dirk Louis – Peter Müller: Java 5 Belépés a programozás világába Panem 963 545 454 6
Benkő Tiborné, Tóth Bertalan Együtt könnyebb a programozás Java Computerbooks 963 618 337 6

Rogers Cadenhead Tanuljuk meg a Java programozási nyelvet Kiskapu Kft. 963 9637 07 6
24 óra alatt
Angster Erzsébet Objektumorientált tervezés és programozás 4KÖR Bt. 963 00 6262 3
Java 1 - 2 963 00 6263 1
Peter J. DePasquale Java zsebkönyv Kiskapu Kft. 963 9637 10 6
Nyékyné Gaizler Judit, Frohner Java 2 útikalauz programozóknak ELTE TTK Hallgatói Alapít- 963 463 305 6
Ákos, Kozsik Tamás (Szerkesztők) vány

Kathy Sierra, Bert Bates Agyhullám: Java Kiskapu Kft. 978 963 9637 79 5

http://docs.oracle.com/javase/7/docs/api/

Dátum: éééé. hh. nn.

13
NEVELÉSI-OKTATÁSI STRATÉGIA
MÓDSZEREK
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK TANULÓI MUNKAFORMÁK
ESZKÖZÖK
MEGJEGYZÉSEK
0 – 2’ Számítógép bekapcsolása, házi feladat megnyitása Ellenőrzés Számítógép
Önellenőrzés Házi feladat
Diagnosztizálás
Hibakeresés A házi feladatok elektronikus úton,
határidőre történő beadása; reflektá-
lás részben elektronikusan, részben
órán.
Precizitás, pontosság
Szintaktika követése Számítógép
Projektor
Vetítővászon
Frontális munka

A figyelem felkeltése Megbeszélés (beszélgetés)


Motiváció
Képzeljék el, hogy a házi feladatban nem egy öttagú család tagjai, hanem egy NetBeans IDE 7.3 Integrált Fejlesz-
tői Környezet használata
18 lakásos társasház lakói szerepelnek. Mi okozná a nehézséget?
Válasz: A nehézséget az okozná, hogy sok változót kellene deklarálni.

14
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

2 – 3’ Hogy tudnánk megkönnyíteni a dolgunkat? Problémamegoldás


Jó lenne, ha lenne olyan adatszerkezet, mely egy adott változónévvel több kü-
lönálló adatot tud tárolni a megadott típusból.
Szemléletesség
Pl.: Képzeljék el, hogy egyforma dobozokat rakunk le egymás mellé és a do-
bozokba beletesszük a számokat.
Logikus gondolkodás
Szemléltetés

Fokozatosság
Projektor

Absztrakt gondolkodás Saját készítésű kép


CINEMA 4D programmal

Az új ismerteket meg- Kooperatív oktatási módszer


alapozó tények biztosí-
tása

Mindegy, hogy egész számokat vagy valós számokat helyezünk el a dobozok-


ban?
Válasz: Nem mindegy, hogy egész számokat vagy valós számokat teszünk a
dobozokba.

15
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

3 – 4’ Mit szeretnénk még elhelyezni benne? Absztrakt gondolkodás Frontális munka


Válasz: Szeretnénk még elhelyezni benne pl. szöveget, logikai értéket.

Ezen igényeink megvalósítására Java-ban a tömb alkalmas. Új ismeret közlése Elbeszélés

4 – 7’ Tömb: Fix elemszámú, azonos típusú elemekből álló összetett adatszerkezet. Fogalomalkotás, abszt- Elbeszélés
rakció, általánosítás
Használatában az a nagyszerű, hogy nem kell az elemeknek egyedi neveket
kitalálni, hanem egy gyűjtőnevet adunk az egész csoportnak. Magyarázat
Rögzítés
Hogyan deklarálunk egy változót? Mondjon egy példát!
Megbeszélés
Válasz: Úgy deklarálunk egy változót, hogy megadjuk a típusát és a nevét!
Visszaemlékezés
Pl.: int a; Visszacsatolás
Tábla
Rögzítés
A tömb referencia típusú változó, melyet szintén deklarálnunk kell.
1. elemek típusa Projektor
Alkalmazás
2. tömbképző operátor: szögletes zárójelpár Fogalomalkotás
3. tömb azonosítója
ide is tehetjük!
<elemtípus>[] <tömbAzonosító>; Megfigyelés
Tábla
Rögzítés
<elemtípus> <tömbAzonosító>[];

Pl.: int[] iArray;

16
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

7 – 9’ Pl.: int[] iArray1;


Számítógép
int iArray2[]; Megerősítés
Projektor
Hogyan tudunk egyszerre több változót deklarálni? Vetítővászon

Válasz: Úgy tudunk egyszerre több változó deklarálni, hogy megadom a típust Visszaemlékezés Frontális munka
Visszacsatolás Kooperatív oktatási módszer
és vesszővel elválasztva a változók neveit.

Döntésképesség Önálló munka


Feladat: Döntse el, melyik tömb a következők közül?
Aktivizálás
int[] iArray1, iArray2; Gyakorlás
Alkalmazás
int iArray3[], iArray4;

9 – 10’ Emlékezzünk vissza, mi történik a memóriában, ha deklarálunk egy primitív Frontális munka
típusú változót! Visszaemlékezés Megbeszélés
Válasz: A fordító az ’a’ nevet egy meghatározott tárolóterülethez rendeli. Ismétlés
Tábla
Szemléltetés
a

Nézzük, mi történik a tömböknél! Megerősítés

Milyen adatszerkezet a tömb?


Válasz: A tömb összetett adatszerkezet.

17
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

Az így deklarált változó képes egy megadott elemtípusú tömbre mutatni. Hallott szakmai szö- Elbeszélés
10 – 12’
veg értése
A változóban az objektum memóriabeli címét tároljuk.
Deklaráció hatására nem jön létre objektum!
Új ismeret közlése
Nézzük, mi történik a memóriában, amikor az iArray nevű int típusú elemek- Tudományosság
ből álló tömböt deklaráljuk! Szemléltetés

Szemléletesség Tábla
iArray

A deklarálással csak a referenciának foglalunk helyet, ezen a ponton még Megerősítés

nincs tömb!

12 – 13’ A fejlesztői környezetben a Gyakorlat13 nevű projektben hozzon létre egy Önállóság NetBeans IDE 7.3
gyakorlat13 csomagot és ebben egy Gyakorlat13_1 nevű osztályt! Eszközválasztás
Egyéni munka
Aktivizálás

13 – 14’ Feladat: Alkotó képesség Egyéni munka


Deklaráljon egy iArray nevű, int típusú elemekből álló tömböt, a kódot lássa Programkód írás

el megjegyzéssel, mely tükrözi, hogy mi történik a kódrészletben!


Figyeljen a kód strukturáltságára!

18
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

14  15’ A kivetített kódrészlet alapján ellenőrizze munkáját! Szintaktika követése Szemléltetés


Precizitás, pontosság Projektor
Önellenőrzés

15 – 17’ Melyik operátorral hozunk létre objektumokat? (Gondoljon pl. a billentyűzet- Visszacsatolás Megbeszélés
ről való bevitelre!) Elbeszélés

Válasz: A new operátorral hozunk létre objektumokat. Logikus gondolkodás


A tömböt külön létre kell hoznunk! Fokozatosság
Alkalmazói képesség
Mit gondolnak, melyik operátorral tudunk tömböt létrehozni?
Frontális munka
Válasz: A new operátorral tudunk tömböt létrehozni. Új ismeret közlése
A tömböt a new operátorral hozhatjuk létre a program futása közben.
1. new operátor
Projektor
2. elemek típusa
3. tömb mérete (elemek száma): nem negatív, int típusú kifejezés.
new <elemtípus>[<méret>];

19
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

17 – 18’ A tömb méretét mibe kell tenni? Megfigyelés


Válasz: A tömb méretét szögletes zárójelbe kell tenni.
Feladat: Hogyan tud létrehozni egy 5 elemű, int típusú tömböt? Fel tudja hasz- Alkalmazás Önálló munka
nálni az előbbi deklarálást? Mindenki a fejlesztői környezetben próbálkozzon, Hibakeresés
Fejlesztői környezet
ha hibát jelez a NetBeans IDE, próbálja megtalálni a hibát! Ha nem megy, se-
gítek. A kódot lássa el megjegyzéssel, mely tükrözi, hogy mi történik a kód-
részletben!

18 – 19’ A kivetített kódrészlet alapján ellenőrizze munkáját! Szintaktika követése Szemléltetés


Precizitás, pontosság Projektor
Önellenőrzés NetBeans IDE 7.3

19 – 20’ Nézzük meg, mi történik a memóriában az értékadás során, primitív és össze- A tanulók informálása
tett típusú változó esetén! a tanulási célról
Tábla
int a = 13;

int[] iArray = new int[5];


Visszacsatolás

20
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

20 – 22’ Próbálja megfogalmazni a különbséget! Szakmai nyelvű be-


szédkészség
int a = 13; Megbeszélés
Aktivizálás
Kooperatív oktatási módszer
Szemléletesség
Visszacsatolás
Tábla

Az új ismereteket
megalapozó tények
biztosítása
A tények elemzése Frontális munka

Láthatjuk, hogy az érték (13) közvetlenül a változó tárolóterületére íródik be. Általánosítás
int[] iArray = new int[5];
Tudományosság

Rendszerezés

A tömb adatelemei külön tárolóterületen helyezkednek el.

21
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

22 – 25’ Hány eleme lehet egy tömbnek? Figyelem felkeltése Irányított, önálló munka
Maximum Integer.MAX_VALUE eleme lehet a tömbnek.

Nézzünk utána a Java hivatalos dokumentációjában, hogy mit is jelent ez? Számítógép
Internet
Hol találom meg a dokumentációt?
Válasz: A dokumentációt a böngészőben találom meg.
Programválasztás Kooperatív oktatási módszer
Mit írjunk be?
Válasz: Integer Java szavakat írjuk be. Információ gyűjtése
Melyik oldalt keresem?
Válasz: Azt az oldalt keresem, amelyben bent van a docs, oracle szavak és a 7.
Olvasott szakmai szö- http://docs.oracle.com/ja-
http://docs.oracle.com/javase/7/docs/api/java/lang/Integer.html vase/7/docs/api/
veg megértése angol
nyelven

22
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

25 – 26’ Mivel tudnám kiszámolni ezt az értéket? Alkalmazásválasztás Irányított, önálló munka

Válasz: Számítógép számológépével.


Számológép

26  28 Tehát: Megerősítés Elbeszélés


A tömb elemei külön tárolóterületen helyezkednek el. Láthattuk, hogy milliár- Részösszefoglalás Megbeszélés

dos nagyságrendű lehet a tömb elemeinek a száma.


Vajon vannak-e a létrehozott iArray tömbnek értékei? Mi nem töltöttük fel ér- Logikus gondolkodás

tékekkel, a kérdés tehát az, hogy vesznek-e fel alapértelmezett értékeket?


A figyelem felkeltése
Hogy tudnánk meggyőződni róla?
Problémafelvetés
Válasz: Ha látjuk, hogy vannak benne értékek.

Hogyan láthatjuk?

Válasz: Ha ki tudjuk íratni az értékeket, akkor biztosak lehetünk benne, hogy


vannak benne értékek.

23
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

28 – 31’ Ahhoz, hogy ki tudjuk íratni a tömb elemeit, el kell őket érni. A tömb egyes Az új ismereteket Elbeszélés
elemeire indexekkel hivatkozunk. megalapozó tények
biztosítása
Fogalomalkotás
Szemléltetés
Szemléletesség Frontális munka
Tábla

Új ismeret közlése
Az elemek tehát indexelhetők, de vigyázzunk, mert az index minden esetben Figyelem felkeltése

0-ról induló egész szám.


A tömbképző operátor nemcsak a tömb létrehozásakor, hanem a tömb egyes Fokozatosság

elemeinek elérésekor is használatos.


Mit gondolnak, hogy hivatkozunk az iArray tömb első elemére? Ügyeljen az Aktivizálás
Figyelem felkeltése
indexre!

Válasz: iArray[0] Fejlesztői környezet


Alkalmazás
Precizitás, pontosság Önálló munka
Feladat: Írassa ki az iArray tömb első elemét a fejlesztői környezetben! A kó-
Diagnosztizálás
dot lássa el megjegyzéssel, mely tükrözi, hogy mi történik a kódrészletben!
Ha hibát jelez a NetBeans IDE, próbálja megtalálni a hibát!

24
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

31 – 32’ A kivetített kódrészlet alapján ellenőrizze munkáját! Mit tapasztal a futtatás Szintaktika követése Szemléltetés
során? Precizitás, pontosság Projektor
Önellenőrzés
Önálló munka

Megfigyelés
Megbeszélés

Válasz: A tömb első eleme alapértelmezett értéket vett fel, ez a nulla.

Információt gyűjt
Tábla
A jelenség elemzése

Kooperatív oktatási módszer


Következtetés
Mire következtetnek ebből?

Válasz: A tömb többi eleme is az alapértelmezés szerinti nulla értéket veszi Logikus gondolkodás

fel.

25
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

32 – 33’ Győződjünk meg róla, hogy sejtésünk igaz-e! Megfigyelés

Hány elemet kellene még kiíratnunk? Kooperatív oktatási módszer


Frontális munka
Válasz: Még négy elemet kellene kiíratnunk. Figyelem felkeltése
Visszacsatolás
Hogyan tudnánk ezt az ismétlő tevékenységet egyszerűbben lekódolni? Gon- Ismétlés
doljon bele, ha 100 elemű lenne a tömb! Fokozatosság

Válasz: Egyszerűbben iterációval, méghozzá, mivel ismerjük az ismétlések szá-


Problémamegoldás
mát, ezért léptetéses ciklussal tudjuk lekódolni.

33 – 36’ Feladat: Írassa ki a tömb elemeit egymás mellé, tabulátorral elválasztva, hasz- Eszközválasztás Structorizer vagy Microsoft
nálva a már megismert léptetéses ciklust! Készítsük el a kiíratás tervét, válasz- Alkalmazás Office Excel
Algoritmikus gondol- Irányított, önálló munka
szuk ki a hozzá megfelelő alkalmazást!
kodás
Ha kevés az idő a struktogramot
Struktogram készítése
Precizitás, pontosság megkapják hálózaton, elemezzük,
Alkotó képesség és az alapján kódolnak.

Beszélgetés
Struktogram készítése Szemléltetés

vagy Projektor

Struktogram elemzése

26
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

36 – 40’ A terv alapján kódoljon! Programkód írása Számítógép


Szintaktika követése Fejlesztői környezet
Figyelje meg a futási eredményt!
Hibakeresés Egyéni munka

40 – 41’ A kivetített kódrészlet alapján ellenőrizze munkáját! Szemléletesség Szemléltetés

Vesse össze a kétféle megoldást, nézze meg, mi a különbség a kettő között! Projektor

41 – 42’ Melyik megoldást célszerű alkalmazni? Önellenőrzés Projektor


NetBeans IDE 7.3
Vita
Megfigyelés

A megoldás sokoldalú
elemzése

Meggyőzőképesség

27
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

I.b) A következő órán a length beveze-


Döntésképesség
tése után még jobban megerősítést
A tömb tulajdonságait figyelembe véve az 5 a tömb elemeinek a száma.
kap és tudatosul választásunk oka.
Egy karakterrel kevesebbet kell gépelni 

42 – 43’ Mit állapíthatunk meg tehát a futási eredmény alapján? Általánosítás Szemléltetés

Az újonnan létrehozott tömb elemei alapértelmezés szerinti értékeket vesznek Tábla

fel.

A KÖVETKEZŐ ÓRA MEGTAR-


TÁSÁRA KÖZVETLENÜL EZ
UTÁN AZ ÓRA UTÁN KERÜL
SOR, EZÉRT NINCS HÁZI FEL-
ADAT.

43 – 44’ Rendszerezés Rendszerezés Kooperatív oktatási módszer

44 – 45’ Tanulók munkájának értékelése Értékelés Megbeszélés

28
TÁBLAKÉP

int a = 13; int[] iArray = new int[5];

29
Feladatok

1. feladat: 4. feladat:
Döntse el, melyik tömb a következők közül? Írassa ki az iArray tömb első elemét a fejlesztői környezetben! A
int[] iArray1, iArray2; kódot lássa el megjegyzéssel, mely tükrözi, hogy mi történik a
int iArray3[], iArray4; kódrészletben! Ha hibát jelez a NetBeans IDE, próbálja megtalálni
a hibát!
2. feladat:
5. feladat:
Deklaráljon egy iArray nevű, int típusú elemekből álló tömböt, a
kódot lássa el megjegyzéssel, mely tükrözi, hogy mi történik a Írassa ki a tömb elemeit egymás mellé, tabulátorral elválasztva,

kódrészletben! használva a már megismert léptetéses ciklust! Készítse el a kiíratás


tervét, válassza ki a hozzá megfelelő alkalmazást! A terv alapján
Figyeljen a kód strukturáltságára!
kódoljon! Figyelje meg a futási eredményt!
3. feladat:
Hogyan tud létrehozni egy 5 elemű, int típusú tömböt? Fel tudja
használni az előbbi deklarálást? Mindenki a fejlesztői környezet-
ben próbálkozzon, ha hibát jelez a NetBeans IDE, próbálja megta-
lálni a hibát! A kódot lássa el megjegyzéssel, mely tükrözi, hogy
mi történik a kódrészletben!

30
Reflexió

Új ismereteket feldolgozó óra. értékeket vesznek fel egy int típusú tömb elemei. Az észrevételüket
folyamatosan rögzítettem a táblán.
A házi feladat nagyon jól előkészítette az új anyag bevezetését, a tömb
adatszerkezet fogalmának kialakítását, és a figyelem felkeltését. Nagy- A struktogramot sikerült elkészíteni, de lehet, hogy az óra végi össze-
mértékben elősegítette a motiválást a CINEMA 4D programmal készí- foglalás így nem volt olyan teljeskörű, de ez nem probléma, mert a
tett modell, melynek még az elkészítése felől is kérdezősködtek a diá- következő órát, ami közvetlenül ez után jött, ezzel kezdtem.
kok. Sikerült felkelteni érdeklődésüket új programok iránt, illetve így Többféle megoldási alternatívákra hívtam fel kódolásnál a figyelmü-
személyes példát mutattam az egész életen át tartó tanulás jelentősé- ket, valamint arra, érdemes mindig átgondolni, hogy melyik a hatéko-
gére. nyabb megoldás. Az, hogy miért is esett a választás a b) megoldásra,
Nehéz elképzelni a tömb memóriafoglalását, ennek megértését ábrák- azt a következő órán értették meg igazán a length konstans bevezeté-
kal tettem szemléletessé, de természetesen ennek rögzülése hosszú fo- sével.
lyamat. Nagy hangsúlyt fektettem az elmondottak ismétlésére, mind- A folyamatos visszacsatolás és a fokozatosság elvének betartását kö-
ezzel hozzájárulva az új fogalmak megerősítéséhez és rögzítéséhez. vetve a diákok szinte saját maguk jöttek rá és mondták ki az új isme-
Fontosnak tartom a dokumentáció folyamatos tanulmányozását, hasz- reteket, így elmondhatom, hogy a logikus gondolkodás fejlesztése vé-
nálatát és így egy tanári közlés helyett a diákok saját maguk tapasztal- gig kísérte az órát. Természetesen az új ismereteket a tudományosság
hatják meg a tényeket, ezzel elősegítve az olvasott angol nyelvű szak- elvét követve mindig újra megfogalmaztam, mindezzel hozzájárulva a
mai szöveg megértését. hallott szakmai szöveg megértésének fejlesztéséhez, a szakmai nyelvű
beszédkészség kialakításához és az anyag megerősítéséhez
A tömb kiíratását nem pusztán feladatként jelöltem meg, hanem ezáltal
saját maguk észlelhették a diákok, hogy milyen alapértelmezett

31
ÓRATERVEZET - A STRING OSZTÁLY ÉS A TÖMBÖK. TÚLINDEXELÉS.

A pedagógus neve: Kovács Henriette Tantárgy: Adatbázis- és szoftverfejlesztés gyakorlat

A szakmacsoport száma és megnevezése: 7. Informatika Programozási nyelv: Java

A szakképesítés azonosító száma: 54 213 05 Fejlesztői környezet: NetBeans IDE 7.3

A szakképesítés megnevezése: Szoftverfejlesztő Osztály - csoport: I/13. S - SZ2

Iskolai rendszerű szakképzés (a szakképzési évfolyamok Az óra tananyaga: A String osztály és a tömbök. Túlindexelés.
száma: 2)

Szakmai követelménymodul: 10817-12 Hálózatok, programo-


zás és adatbázis-kezelés

32
Az óra cél- és feladatrendszere – Alkotó munkára nevelés: a végeredmény egy új termék, egy prog-
ram lesz.
A fejlesztendő attitűd, készségek, képességek, a tanítandó ismere-
– Az esztétikai készség fejlesztése: igény és készség a számítógépes
tek (fogalmak, szabályok stb.) és az elérendő fejlesztési szint, tu- produktum esztétikus formájának kialakítására, a program helyes
dásszint megnevezése: strukturálására.
– A tanuló tartsa be a számítógépes munka szabályait, különös tekin- – Tudjon tömb típusú változót deklarálni, létrehozni.
tettel a balesetek megelőzésére. A berendezésekkel fegyelmezet- – Legyen képes a tömbök elemeit elérni.
ten, a használati utasításokat pontosan követve dolgozzon. Legyen – Tudjon tömböt feltölteni, tömb elemeit megjeleníteni.
tisztában a számítógépes környezet alapvető ergonómiai kérdései- – Lássa a hasonlóságot String és tömb indexelésében.
vel, az egészségvédelem lehetőségeivel számítógépes munkakör- – Tudja mi a különbség a length() metódus és a length konstans kö-
nyezetben. zött.
– Felkelteni és folyamatosan ébren tartani a tanulók érdeklődését a – Legyen képes felismerni, diagnosztizálni a túlindexelés jelenségét,
szoftverfejlesztés iránt. ezt követően legyen képes azt javítani.
– Korszerű alkalmazói készség kialakítása: legyenek képesek arra,
Fejlesztendő készségek, képességek
hogy a szoftvereket célszerűen használják.
– Alkalmazás, feladatértelmezés, fogalomalkotás, kommunikációs
– Az algoritmikus gondolkodás fejlesztése: a tanulók önálló, rend-
képesség, logikus gondolkodás, önellenőrzés, precizitás, pontos-
szerezett, logikus gondolkodásának fejlesztése; a logikus gondol-
ság, struktogram készítése, programkód írása, visszaemlékezés, di-
kodás lényeges a problémamegoldásban, és az algoritmusok elké-
agnosztizálás, hibakeresés.
szítésében, kódolásában.
– Legyen képes a NetBeans fejlesztői környezet kényelmi funkciói-
nak készségszintű használatára.
– Önálló munkára nevelés és felzárkóztatás.

33
Fejlesztendő attitűd – Adott feladat megoldásához legyen képes algoritmusokat megfo-
– Legyen képes: számítógépet kezelni, szoftvereket használni. galmazni, tervezni és megvalósítani.
– Tudja önállóan használni a hálózatot és annak alapszolgáltatásait. – Legyen képes programozási feladatot ellátni, egy szoftvert elkészí-
– Legyen képes az adott probléma megoldásához kiválasztani az ál- teni (kódolni), Java programnyelven implementálni.
tala ismert módszerek, eszközök és alkalmazások közül a megfele- – Legyen képes értelmezni és javítani a NetBeans által megjelenített
lőt. hibaüzeneteket.
– Legyen képes a problémamegoldáshoz szükséges adatok és az – Legyen képes programjait úgy megírni, hogy azt később Ő maga
eredmény kapcsolatának megtervezésére, értelmezésére. is, vagy tanulótársa is fel tudja használni.

Az óra didaktikai feladatai

 Aktivizálás  Következtetés
 Ismétlés  A tények sokoldalú elemzése
 Megerősítés  Új ismeret közlése
 Fokozatosság  Rögzítés
 A tanulók informálása a tanulási célokról  Ellenőrzés
 Szemléletesség  A futási eredmény elemzése
 Visszacsatolás  Gyakorlás
 Összehasonlítás

Tantárgyi kapcsolatok: Adatbázis- és szoftverfejlesztés elmélet, Matematika, Hálózati ismeretek I., Informatikai alapismeretek

34
Felhasznált források (tankönyv, munkafüzet, feladat- és szöveggyűjtemény, digitális tananyag, online források, szakirodalom stb.):

Szerző(k) Cím Kiadó ISBN kód

Vég Csaba – dr. Juhász István Java – start! Logos 2000 963 03 9005 1

Vég Csaba Instant Java/Java EE/SOA I-II Logos 2000 978-963-06-2601-9


978-963-06-2602-6

Dirk Louis – Peter Müller: Java 5 Belépés a programozás világába Panem 963 545 454 6
Benkő Tiborné, Tóth Bertalan Együtt könnyebb a programozás Java Computerbooks 963 618 337 6

Rogers Cadenhead Tanuljuk meg a Java programozási nyelvet Kiskapu Kft. 963 9637 07 6
24 óra alatt
Angster Erzsébet Objektumorientált tervezés és programozás 4KÖR Bt. 963 00 6262 3
Java 1 - 2 963 00 6263 1
Peter J. DePasquale Java zsebkönyv Kiskapu Kft. 963 9637 10 6
Nyékyné Gaizler Judit, Frohner Java 2 útikalauz programozóknak ELTE TTK Hallgatói Alapít- 963 463 305 6
Ákos, Kozsik Tamás (Szerkesztők) vány

Kathy Sierra, Bert Bates Agyhullám: Java Kiskapu Kft. 978 963 9637 79 5

http://docs.oracle.com/javase/7/docs/api/

Dátum: éééé. hh. nn.

35
NEVELÉSI-OKTATÁSI STRATÉGIA
MÓDSZEREK
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK TANULÓI MUNKAFORMÁK
ESZKÖZÖK
MEGJEGYZÉSEK

0 – 5’ Elmúlt órán tanultak felelevenítése: Visszaemlékezés


Kommunikációs ké- Ez az óra közvetlenül kapcsolódik
Mi tette szükségessé a tömb adatszerkezet bevezetését? pesség
Hogyan deklarálunk egy tömböt? az előző órához.

A tömbképző operátort szintaktikailag hol kell elhelyezni? Beszélgetés


Aktivizálás
Deklaráció hatására jön létre objektum? Ismétlés
Melyik operátorral hozunk létre tömböt? Megerősítés
Frontális munka
A tömb méretét mibe kell tenni? Fokozatosság

A memóriában hol helyezkednek el a tömb adatelemei?


Projektor
Hány eleme lehet egy tömbnek? A tanulók informálása
a tanulási célokról
Egy int típusú tömb elemei vesznek-e fel alapértelmezett értékeket? Miket?

(Az elkövetkezőkben meg fogjuk vizsgálni azt is, hogy más elemtípusú
tömb elemei milyen alapértelmezett értékeket vesznek fel.)

Melyik vezérlési szerkezetet használtuk fel a tömb elemeinek kiíratására?


Hogyan hivatkozunk a tömb elemeire?

36
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

5 – 7’ Hol találkoztunk már az index fogalmával?

A String objektum szövege unicode karakterek sorozata, a karakterek sorszá- Visszaemlékezés Kooperatív oktatási módszer
mozottak: ha a szöveg n karaktert tartalmaz, vagyis a szöveg hossza n, akkor a Elbeszélés
Frontális munka
legelső karakter sorszáma, indexe 0, az utolsóé pedig n-1. Tehát hasonlóan, Szemléletesség
mint a tömböknél. Visszacsatolás
Megerősítés

Logikus gondolkodás
Tábla

Összehasonlítás
A diákok mondják, hogy mit írjak
Hasonlítsuk össze egy String objektum és egy tömb objektum memóriafogla-
az ábrák fölé, melyeket felrajzolok
lását!
a táblára.
Diktálják, milyen kódot írjak az ábrák fölé?
Tábla
String nev = new String(”Dorottya”);

int[] iArray = new int[5];

37
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

7 – 9’

Frontális munka

Szemléletesség Kooperatív oktatási módszer


Összehasonlítás

9 – 11’ Hogyan tudjuk lekérdezni egy szöveg hosszát? Visszaemlékezés Megbeszélés


Visszacsatolás
A String osztály length() metódusa visszaadja a szöveg hosszát. A visszatérési
Megerősítés
érték int típusú.

Mit gondolnak vajon le tudom kérdezni a tömb hosszát is?


Következtetés

38
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

Minden tömb objektumnak van egy length konstansa, amely megadja a tömb A tények sokoldalú Elbeszélés
hosszát. elemzése  új ismeret
közlése
<tömbAzonosító>.length

A length értéke a tömb létrehozásától állandó, nem lehet megváltoztatni.


Fokozatosság
A tömb indexei 0 és length-1 közöttiek.

11 – 23’ Feladat: Feladatértelmezés Egyéni munka


Alkalmazás Számítógép
1) Hozzon létre egy lArray nevű, long elemtípusú, 5 elemű tömböt!
Precizitás, pontosság Structorizer
Készítsen a feladathoz struktogramot! Struktogram készítése Java 1.5
a) Nézze meg, hogy a length konstans valóban visszaadja-e a tömb Programkód írása NetBeans IDE 7.3
hosszát! Közben segítek annak, aki igényli
b) Töltse fel a tömb elemeit a következő számokkal: 11, 20, -50, 70, Aktivizálás és követem a munkájukat.
100! Rögzítés
Lehetséges, hogy túlindexelési
Megerősítés
c) Írassa ki a tömb elemeit a length konstans felhasználásával, tabu- problémába futnak.  Következő
Ellenőrzés
látorokkal elválasztva! feladat
A feladatot a Gyakorlat13 projekt gyakorlat13 csomagjának, Gyakorlat13_2
Gyakorlás Magyarázat
néven létrehozott osztályába készítse el!

39
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

23 – 25’

Microsoft Office Excel 2007

Önellenőrzés Projektor

A tömb utolsó elemének indexe a tömb hossza-1. A kódolásnál, ha csak a ki-


Magyarázat
sebb relációjelet használja, akkor utána a tömb hosszát kell csak beírnia, ellen-
ben ha a kisebb-egyenlő relációjelet használja, akkor utána a tömb hossza-1-et
kell beírnia, úgymint a struktogramban.

40
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

25 – 27’

Diagnosztizálás
Hibakeresés

Projektor
Önellenőrzés

27 – 29’ Feladat: Feladatértelmezés Egyéni munka

2) Nézzük meg, mi történik, ha a tömb egy nem létező elemére hivatkozunk! Számítógép
Java 1.5
Pl. az lArray tömb 5., nem létező elemét próbáljuk meg feltölteni -13-
NetBeans IDE 7.3
mal! Figyeljük meg kapunk-e és honnan erről valamilyen hibaüzenetet!

41
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

29 – 31’ A NetBeans nem jelez semmilyen problémát! Futtatás során azonban hibába Frontális munka
futunk! A futási eredmény
elemzése
Kooperatív oktatási módszer

Magyarázat

A Java a programvégrehajtás alatt figyelmeztetést küld, ha egy hivatkozás egy Fogalomalkotás

tömb érvénytelen elemére mutat, és a Java-értelmező, az interpreter megsza-


kítja működését az ArrayIndexOutOfBoundsException hibaüzenettel.

Kommentezze ki a sort!

31 – 37’ Feladat:

3.) Írassa ki az lArray tömb elemeit fordított sorrendben! Feladatértelmezés Egyéni munka
Készítsen a kiíratáshoz struktogramot! Logikus gondolkodás
Alkalmazás
Ha nem megy, segítségül a hálózaton található egy kép Visszafele néven. Gyakorlás

42
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

37 – 38’

Szemléletesség Szemléltetés

Rögzítés Visszafele.png

38 – 39’

Ellenőrzés Microsoft Office Excel 2007

Projektor
Önellenőrzés

39 – 40’ Ellenőrzés
Diagnosztizálás
Projektor
Hibakeresés
Önellenőrzés

43
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

40 – 44’ Rendszerezés: Rendszerezés Kooperatív oktatási módszer

1. Indexelés A KÖVETKEZŐ ÓRA MEGTAR-


TÁSÁRA KÖZVETLENÜL EZ
2. Memóriafoglalás
UTÁN AZ ÓRA UTÁN KERÜL
3. length SOR, EZÉRT NINCS HÁZI FEL-

4. ArrayIndexOutOfBoundsException ADAT.

44 – 45’ Tanulók munkájának értékelése Értékelés Megbeszélés

44
TÁBLAKÉP

String nev = new String(”Dorottya”); int[] iArray = new int[5];

45
Feladatok

1.) Hozzon létre egy lArray nevű, long elemtípusú, 5 elemű tömböt! 2.) Nézzük meg, mi történik, ha a tömb egy nem létező elemére hi-
Készítsen a feladathoz struktogramot! vatkozunk! Pl. az lArray tömb 5., nem létező elemét próbáljuk
a) Nézze meg, hogy a length konstans valóban visszaadja-e meg feltölteni -13-mal! Figyeljük meg kapunk-e és honnan erről
a tömb hosszát! valamilyen hibaüzenetet!
b) Töltse fel a tömb elemeit a következő számokkal: 11, 20, 3.) Írassa ki az lArray tömb elemeit fordított sorrendben!
-50, 70, 100! Készítsen a kiíratáshoz struktogramot!
c) Írassa ki a tömb elemeit a length konstans felhasználásá- Ha nem megy, segítségül a hálózaton található egy kép Vissza-
val, tabulátorral elválasztva! fele néven.

46
Reflexió

Új ismereteket feldolgozó óra Az ArrayIndexOfBoundsException hibaüzenet megjelenése meglepe-


tésemre nem okozott nehézséget senkinek, sőt a kifejezést még meg is
Úgy érzem nagyon hasznos volt az a választás, hogy összehasonlítot-
mosolyogták, amikor kimondtam. Örömmel fogadták, hogy ha esetleg
tam több szempontból is (indexelés, memóriafoglalás, hossz) a tömbö-
ilyen típusú hibát ejtenek, az interpreter jelez nekik. Megértették, hogy
ket és a String osztály objektumait. Ezzel elősegítettem a Stringről ta-
azért kell ismerniük az Exception-öket, mert így érteni fogják, hogy mi
nultak elmélyítését és a tömb ismeretanyagának rögzítését. A tények
a hiba oka.
sokoldalú elemzésével rávilágítottam a hasonlóságokra és a különbsé-
gekre, mely a fogalmak rendszerezését nagyban elősegítette. A tömb elemeinek fordított sorrendben történő kiíratása két fontos
célt is szolgált, egyrészt a léptetéses ciklus megerősítését, valamint az
A for ciklusban a length konstans használatával a precizitás és pontos-
indexek helyes használatát. Sejtésem beigazolódott, egy diáknak
ság kompetenciákat fejlesztettem, de ennek elmélyítését a továbbiak-
problémát okozott és hasznos volt a hálózatra feltett kép, mely a
ban fontos feladatomnak tartom, mivel nehézséget okozott az
szemléltetés és vizualitás révén segítséget nyújtott neki.
i <= lArray.length -1 és az i < lArray.length azonosságának megér-
tése.

A struktogram elkészítésénél az új jelölések készségszinten természe-


tesen még nem fejlődtek ki, ebben sokat segítettem, sőt a struktogra-
mokat részben közösen készítettük el.

47
ÓRATERVEZET - TÖMB ELEMEINEK ALAPÉRTELMEZETT ÉRTÉKEI. TÖMB FELTÖLTÉSE.

A pedagógus neve: Kovács Henriette Tantárgy: Adatbázis- és szoftverfejlesztés gyakorlat

A szakmacsoport száma és megnevezése: 7. Informatika Programozási nyelv: Java

A szakképesítés azonosító száma: 54 213 05 Fejlesztői környezet: NetBeans IDE 7.3

A szakképesítés megnevezése: Szoftverfejlesztő Osztály - csoport: I/13. S - SZ2

Iskolai rendszerű szakképzés (a szakképzési évfolyamok Az óra tananyaga: Tömb elemeinek alapértelmezett értékei.
száma: 2) Tömb feltöltése.

Szakmai követelménymodul: 10817-12 Hálózatok, programo-


zás és adatbázis-kezelés

48
Az óra cél- és feladatrendszere

A fejlesztendő attitűd, készségek, képességek, a tanítandó ismeretek (fogalmak, szabályok stb.) és az elérendő fejlesztési szint, tudásszint
megnevezése:

– A tanuló tartsa be a számítógépes munka szabályait, különös tekin- – Önálló munkára nevelés és felzárkóztatás.
tettel a balesetek megelőzésére. A berendezésekkel fegyelmezet- – Alkotó munkára nevelés: a végeredmény egy új termék, egy prog-
ten, a használati utasításokat pontosan követve dolgozzon. Legyen ram lesz.
tisztában a számítógépes környezet alapvető ergonómiai kérdései- – Az esztétikai készség fejlesztése: igény és készség a számítógépes
vel, az egészségvédelem lehetőségeivel számítógépes munkakör- produktum esztétikus formájának kialakítására, a program helyes
nyezetben. strukturálására.
– Felkelteni és folyamatosan ébren tartani a tanulók érdeklődését a – Tudjon tömb típusú változót deklarálni, létrehozni.
szoftverfejlesztés iránt. – Legyen képes a tömbök elemeit elérni.
– Korszerű alkalmazói készség kialakítása: legyenek képesek arra, – Tudjon tömböt szabály alapján léptetéses ciklussal feltölteni.
hogy mindezeket célszerűen használják. – Tudjon tömböt megjeleníteni, elemeit szóközzel vagy tabulátorral
– Az algoritmikus gondolkodás fejlesztése: a tanulók önálló, rend- elkülöníteni.
szerezett, logikus gondolkodásának fejlesztése; a logikus gondol- – Tudja primitív és összetett elemtípusú tömbök elemeinek alapértel-
kodás lényeges a problémamegoldásban, és az algoritmusok elké- mezett értékeit meghatározni.
szítésében, kódolásában.
– Legyen képes a NetBeans fejlesztői környezet kényelmi funkciói-
nak készségszintű használatára.

49
Fejlesztendő készségek, képességek – Legyen képes elemi és összetett adatok megkülönböztetésére, ke-
– Algoritmus megvalósítása, algoritmus módosítása, diagnosztizá- zelésére, használatára.
lás, hibakeresés, feladatértelmezés, logikus gondolkodás, önálló- – Legyen képes a problémamegoldáshoz szükséges adatok és az
ság, önellenőrzés, precizitás, pontosság, programkód írása, prog- eredmény kapcsolatának megtervezésére, értelmezésére.
ramkód átalakítása, javítása, programkód módosítása, szintaktika – Adott feladat megoldásához legyen képes algoritmusokat megfo-
követése, visszaemlékezés, kommunikációs képesség, olvasott galmazni, tervezni és megvalósítani.
szakmai szöveg megértése, struktogram átalakítása, struktogram – Legyen képes programozási feladatot ellátni, egy szoftvert elkészí-
készítése, összefüggések felismerése. teni (kódolni), Java programnyelven implementálni.
– Legyen képes értelmezni és javítani a NetBeans által megjelenített
Fejlesztendő attitűd
hibaüzeneteket.
– Legyen képes: számítógépet kezelni, szoftvereket használni.
– Legyen képes programjait úgy megírni, hogy azt később Ő maga
– Tudja önállóan használni a hálózatot és annak alapszolgáltatásait.
is, vagy tanulótársa is fel tudja használni.
– Legyen képes az adott probléma megoldásához kiválasztani az ál-
tala ismert módszerek, eszközök és alkalmazások közül a megfe-
lelőt.

50
Az óra didaktikai feladatai

 A figyelem felkeltése  Fogalomalkotás


 A szükséges előzetes ismeretek felidézése  Fokozatosság
 A tanulók informálása a tanulási célokról  Gyakorlás
 A tények elemzése  Információ keresése, elemzése.
 Absztrakciók  Ismétlés
 Aktivizálás  Következtetés
 Általánosítások  Megerősítés
 Az új ismerteket megalapozó tények biztosítása  Rendszerezés
 Ellenőrzés  Új ismeret közlése
 Értékelés

Tantárgyi kapcsolatok: Adatbázis- és szoftverfejlesztés elmélet, Matematika, Angol, Hálózati ismeretek I., Informatikai alapismeretek, Bioló-
gia

51
Felhasznált források (tankönyv, munkafüzet, feladat- és szöveggyűjtemény, digitális tananyag, online források, szakirodalom stb.):

Szerző(k) Cím Kiadó ISBN kód

Vég Csaba – dr. Juhász István Java – start! Logos 2000 963 03 9005 1

Vég Csaba Instant Java/Java EE/SOA I-II Logos 2000 978-963-06-2601-9


978-963-06-2602-6

Dirk Louis – Peter Müller: Java 5 Belépés a programozás világába Panem 963 545 454 6
Benkő Tiborné, Tóth Bertalan Együtt könnyebb a programozás Java Computerbooks 963 618 337 6

Rogers Cadenhead Tanuljuk meg a Java programozási nyelvet Kiskapu Kft. 963 9637 07 6
24 óra alatt
Angster Erzsébet Objektumorientált tervezés és programozás 4KÖR Bt. 963 00 6262 3
Java 1 - 2 963 00 6263 1
Peter J. DePasquale Java zsebkönyv Kiskapu Kft. 963 9637 10 6
Nyékyné Gaizler Judit, Frohner Java 2 útikalauz programozóknak ELTE TTK Hallgatói Alapít- 963 463 305 6
Ákos, Kozsik Tamás (Szerkesztők) vány

Kathy Sierra, Bert Bates Agyhullám: Java Kiskapu Kft. 978 963 9637 79 5

http://docs.oracle.com/javase/7/docs/api/

http://unicode-table.com/en/

Dátum: éééé. hh. nn.

52
NEVELÉSI-OKTATÁSI STRATÉGIA
MÓDSZEREK
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK TANULÓI MUNKAFORMÁK
ESZKÖZÖK
MEGJEGYZÉSEK
0 – 5’ Tanórát előkészítő kérdések: Visszaemlékezés
Kommunikációs ké- Ez az óra közvetlenül kapcsolódik
 A length szó kapcsán mi jut eszébe? pesség
 Tömbök esetében hol célszerű használni a length konstanst? az előző órához.

 Milyen alapértelmezett értékeket vesznek fel az int, long elemtípusú Beszélgetés


Aktivizálás
tömb elemei? Ismétlés
 Tudna-e olyan elemtípust mondani, ahol ugyanez az érték jelenne meg? Megerősítés
Frontális munka
 Milyen primitív típusok vannak még a Java-ban? Fokozatosság

 A mai órán megtapasztaljuk, hogy valós, logikai, karakter és összetett tí-


Projektor
pus esetén mik az alapértelmezett értékei a tömb elemeinek. A tanulók informálása
a tanulási célokról
 Hogyan töltöttük fel a tömb elemeit?
Válasz: egyesével.
 A mai órán azt is megtanuljuk, hogyan tudnánk sokkal hatékonyabban Java 1.5
NetBeans IDE 7.3
feltölteni a tömböket.
Gyakorlat13/gyakorlat13: Gyakorlat13_3 osztály létrehozása

53
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

5 – 8’ A feladat előkészítése: Visszaemlékezés


 Felhívom a diákok figyelmét arra, hogy ha a tömb elemei és az inde- Együttműködő oktatási mód-
xek között valamilyen összefüggést, szabályt találnak, akkor azt alkal- szer
Figyelem felkeltése Szemléltetés
mazva egy léptetéses ciklus segítségével fel tudják tölteni a tömböt. Aktivizálás
Frontálismunka
Ennek megértésére feltettem egy képet Feltoltes_ciklussal néven a há- Szükséges előzetes is-
meretek felidézése Projektor
lózatra.
Hálózat
 Átismétlem, hogy mi a literál és milyen típusú az egész és valós literál.
 Az ismétlődő kódrészleteket a megfelelő változtatással másolják!

8 – 9’ Feladat: Minden feladathoz készítsen struktogramot!


1.) Hozzon létre egy fArray nevű, float elemtípusú tömböt, melynek 10 Projektor
eleme van!
Feladatértelmezés
a) Írassa ki a tömb elemeinek értékét egymás mellé szóközökkel elvá- Logikus gondolkodás Megbeszélés
lasztva! Milyen következtetéseket von le belőle? Írja be megjegy- Összefüggések felis-
merése
zésbe!
b) Töltse fel a tömb elemeit az alábbi értékekkel!
0.0 2.5 5.0 7.5 10.0 12.5 15.0 17.5 20.0 22.5
c) Írassa ki a tömb elemeit tabulátorral elválasztva!
Ha a fejlesztői környezet felhívja figyelmét egy lehetséges pontosságvesz-
tésre, gondoljon arra, hogy egy valós literál milyen típusú!

54
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

9 – 13 1.a) feladat tervezése Algoritmus tervezése Egyéni munka


Struktogram készítése
Visszaemlékezés
Figyelemmel kísérem a diákok
munkáját, ha szükséges, vagy
Visszacsatolás igénylik segítséget nyújtok nekik.
Gyakorlás
Számítógép
Structorizer

13 – 17’ 1.a) feladat kódolása

Precizitás, pontosság Egyéni munka


Szintaktika követése
Programkód írása
Algoritmus megvalósí- Számítógép
tása Java 1.5
NetBeans IDE 7.3

Gyakorlás
Ellenőrzés Megbeszélés
Következtetés
Általánosítás
A float elemtípusú tömb elemeinek alapértelmezett értéke: 0,0.
Új ismeret közlése
Ez a double elemtípusú tömb elemeire is igaz, tehát megállapíthatjuk, hogy a
valós elemtípusú tömb elemeinek alapértelmezett értéke: 0,0.

55
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

17 – 19’ Feltoltes_ciklussal.png – Szabály felismerése az index és a tömbelem értéke Feltoltes_ciklussal.png


között: Szemléltetés

Szabály felismerése
Megbeszélés

19 – 21’ 1.b) feladat tervezése

Struktogram átalakí- Egyéni munka


tása, készítése
Structorizer
Önállóság

21 – 23’ NetBeaans figyelmeztet a lehetséges pontosságvesztésre: possible loss of


precision Olvasott szakmai an- Együttműködő oktatási mód-
gol szöveg értése szer
Diagnosztizálás, hiba-
keresés
Projektor

56
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

23 – 24’ 1.b) feladat kódolása Egyéni munka


Programkód átalakí- Számítógép
tása, javítása Java 1.5
Szintaktika követése NetBeans IDE 7.3

24 – 27’ 1.c) feladat tervezése

Algoritmus módosítása

Egyéni munka
Structorizer

27 – 29’ 1.c) feladat kódolása Egyéni munka


Programkód módosí- Számítógép
tása Java 1.5
Precizitás, pontosság NetBeans IDE 7.3
Szintaktika követése Projektor

Önellenőrzés

57
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

29 – 30’ A 2., 3., 4. feladat nem véletlenszerűen, tudatosan felosztásra kerül a 3 diák Fokozatosság Differenciálás
között. Precizitás, pontosság

30 – 35’

Programkód írása Struktogramot nem kérek – eddigi


struktogramok és kódok felhaszná-
lása
Az új ismerteket meg-
alapozó tények biztosí- Egyéni munka
tása
A tények elemzése NetBeans IDE 7.3
A megoldást a hálózatra a bead
mappába rakatom fel.
Ellenőrzés
Kivetítem

projektor
segítségével.

35 – 36’ Egy boolean elemtípusú tömb elemeinek alapértelmezés szerinti értéke: false Fogalomalkotás, kö- Tanulói elbeszélés
vetkeztetés, absztrak-
ció, általánosítás.

58
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

30 – 35’

Programkód írása Egyéni munka


NetBeans IDE 7.3
A megoldást a hálózatra a bead
Az új ismerteket meg-
alapozó tények biztosí- mappába rakatom fel.
tása
A tények elemzése Kivetítem

projektor
segítségével.
Ellenőrzés
A helyes megoldások felkerülnek a
hálózatra, így mindenkinek meglesz
a „másik munkája”, melyeket be
tudnak másolni a saját kódjukba.

36 – 37’ Egy char elemtípusú tömb elemeinek alapértelmezés szerinti értéke: \u0000 Fogalomalkotás, kö- Tanulói elbeszélés
Nézzünk utána a böngészőben, hogy melyik kódú unicode karakter ez. vetkeztetés, absztrak-
ció, általánosítás. Internet
PL.:
http://unicode-table.com/en/

59
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

37 – 39’

Egyéni munka

Információ keresése,
elemzése
Megbeszélés
Magyarázat

Megerősítés
Új ismeret közlése

A Unicode a különböző írásrendszerek egységes kódolását leíró nemzetközi


szabvány.
A \u0000 a 0-s kódú unicode karakter.

60
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

30 – 35’ Egyéni munka


Programkód írása NetBeans IDE 7.3
A megoldást a hálózatra a bead
mappába rakatom fel.
Az új ismerteket meg-
alapozó tények biztosí- Kivetítem
tása
A tények elemzése Projektor
segítségével.

Ellenőrzés Egészséges táplálkozás fontosságá-


nak hangsúlyozása.

Ha egy diák sokkal hamarabb vé-


gez, mint a másik, akkor a másik
két feladatból választ, hogy melyi-
ket oldja meg.

39 – 41’ Egy String elemtípusú tömb elemeinek alapértelmezés szerinti értéke: null Fogalomalkotás, kö- Tanulói elbeszélés
Referenciák esetén ez az érték null. vetkeztetés, absztrak-
ció, általánosítás.
A következő órán megmutatom, mi történik a memóriában, ha a tömb
összetett elemtípusú.
Figyelem felkeltése

61
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

41 – 44’ Rendszerezés: Rendszerezés Együttműködő oktatási mód-


szer
1. Egyszerű elemtípusú tömbök elemeinek alapértelmezett értékei
A KÖVETKEZŐ ÓRA MEGTAR-
2. Összetett elemtípusú tömbök elemeinek alapértelmezett értékei TÁSÁRA KÖZVETLENÜL EZ

3. Tömbök feltöltési lehetőségei: UTÁN AZ ÓRA UTÁN KERÜL


SOR, EZÉRT NINCS HÁZI FEL-
kódban egyesével
ADAT.
szabály alapján

Mit gondolnak, hogy lehetne még feltölteni a tömböket?


Figyelem felkeltése
felhasználó által (a következő órán megnézzük)

4. Tömbök kiíratása

szóközzel, tabulátorral elválasztva

Hogy lenne a tömbök kiíratása még szebb?

vesszővel elválasztva

44 – 45’ Tanulók munkájának értékelése Értékelés Megbeszélés


Egész órát végig kíséri az értékelés.

62
Feladatok

1.) Hozzon létre egy fArray nevű, float elemtípusú tömböt, melynek c) Írassa ki a tömb elemeit tabulátorral elválasztva!
10 eleme van! Minden feladathoz készítsen struktogramot! 3.) Hozzon létre egy cArray nevű, char elemtípusú tömböt, melynek
a) Írassa ki a tömb elemeinek értékét egymás mellé szóközök- 4 eleme van!
kel elválasztva! Milyen következtetéseket von le belőle? Írja a) Írassa ki a tömb elemeinek értékét egymás mellé szóközök-
be megjegyzésbe! kel elválasztva! Milyen következtetéseket von le belőle? Írja
b) Töltse fel a tömb elemeit az alábbi értékekkel! be megjegyzésbe!
0.0 2.5 5.0 7.5 10.0 12.5 15.0 17.5 b) Töltse fel a tömb elemeit tetszőleges karakterekkel!
20.0 22.5 c) Írassa ki a tömb elemeit tabulátorral elválasztva!
c) Írassa ki a tömb elemeit tabulátorral elválasztva! 4.) Hozzon létre egy sArray nevű, String elemtípusú tömböt, mely-
Ha a fejlesztői környezet felhívja figyelmét egy lehetséges pon- nek 4 eleme van!
tosságvesztésre, gondoljon arra, hogy egy valós literál milyen tí- a) Írassa ki a tömb elemeinek értékét egymás mellé szóközök-
pusú! kel elválasztva! Milyen következtetéseket von le belőle? Írja
2.) Hozzon létre egy bArray nevű, boolean elemtípusú tömböt, mely- be megjegyzésbe!
nek 4 eleme van! b) Töltse fel a tömb elemeit egészséges élelmiszerekkel!
a) Írassa ki a tömb elemeinek értékét egymás mellé szóközök- c) Írassa ki a tömb elemeit tabulátorral elválasztva
kel elválasztva! Milyen következtetéseket von le belőle? Írja
be megjegyzésbe!
b) Töltse fel a tömb elemeit tetszőleges logikai értékekkel!

63
Reflexió

Ezen óra elemzése során a feladatsor mentén fogok haladni, mely for- - 1.c) feladat - azért változtattam a fehér szóközökön, hogy
mailag szinte ugyanazon feladatokat tartalmazza. Ez azonban csak a megerősítsem bennük azt a tényt, ha átvesznek valamilyen
látszat. Minden feladat hordoz új ismeret megszerzésére irányuló tö- kódrészletet, mindig győződjenek meg arról, hogy az megfelel-e a
rekvéseket, túlhaladva az informatikán, keresvén a kapcsolatot más specifikációnak.
tantárgyakkal, ami ilyen elvont, absztrakt ismeret megalapozása során A következtetés leírása gondot okozott, a megfogalmazás maga nem
nagyon fontos feladat, de ugyanakkor kihívás. volt probléma, de ezt megjegyzésbe beírni nehezükre esett. Vagyis a
Beigazolódott, hogy nagyon jó választásnak bizonyult az 1. feladat. kommentek írását a továbbiakban is következetesen kérni fogom.
Összeállításánál több gondolat is vezérelt. Ezek a következők voltak: A 2-4. feladat alkalmat nyújtott a differenciálásra és nagyon
át szerettem volna ismételni gyakorlati feladaton keresztül a tömb lét- kézenfekvő volt. Láttam világosan, hogy arra nem lesz idő, hogy
rehozását, feltöltését és megjelenítését; meg szerettem volna mutatni, megtapasztalják azt, hogy logikai, karakter és összetett elmtípus esetén
hogy tömb elemeinek mik az alapértelmezett értékei valós elemtípus mik az alapértelmezett értékek és mivel hárman voltak így nehézségi
esetén; illetve azt, hogy egy tömb feltöltése nemcsak szekvenciákkal sorrendben kiosztottam a feladatokat. Lehet, hogy megkérdezhettem
lehetséges. Először double elemtípusú tömbben gondolkoztam, aztán volna őket, ki melyiket szeretné, és ugyanazt választják, amit én
átírtam a feladatot float elemtípusúra, egyrészt azért, mert így lehető- szántam volna nekik. Így még motiváltabbak lettek volna, de ez
ségem volt átismételni literálok adattípusait, másrészt belefutottak a magában foglalta volna azt a lehetőséget, hogy nem tudták volna
possible loss of precision üzenetbe. Valóban segítségül szolgált a há- feltölteni a tömböt és nem lesz sikerélményük.
lózatra feltett Feltoltes_ciklussal.png kép, főleg az egyik diáknak, aki
a matematikával nincs olyan jó barátságban.  A második kiíratásnál

64
A tetszőleges elemekkel való feltöltés szintén nagyon tudatos volt szoktam beszélgetni velük erről és úgy érzem próbálják betartani
részemről, mert nem igazán kreatívak, így ezt a képességet amiket elmagyarázok nekik ezzel kapcsolatban.
mindenképpen fejleszteni szerettem volna. Az utolsó feladatban egy Feladataim a fokozatosság elvét követve jó szolgálatot tettek mind az
kis megkötés azért volt, az egészséges élelmiszerekből lehetett csak új ismeretek elsajátításában, mind a gyakorlásban, rögzítésben.
választani. Ez irányban nagyon fogékony ez a csoport is, sokat

65
ÓRATERVEZET - TÖMB ELEMEINEK FELTÖLTÉSE BILLENTYŰZETRŐL, KIÍRATÁSA VESSZŐVEL ELVÁ-
LASZTVA.

A pedagógus neve: Kovács Henriette Tantárgy: Adatbázis- és szoftverfejlesztés gyakorlat

A szakmacsoport száma és megnevezése: 7. Informatika Programozási nyelv: Java

A szakképesítés azonosító száma: 54 213 05 Fejlesztői környezet: NetBeans IDE 7.3

A szakképesítés megnevezése: Szoftverfejlesztő Osztály - csoport: I/13. S - SZ2

Iskolai rendszerű szakképzés (a szakképzési évfolyamok Az óra tananyaga: Tömb elemeinek feltöltése billentyűzetről,
száma: 2) kiíratása vesszővel elválasztva.

Szakmai követelménymodul: 10817-12 Hálózatok, programo-


zás és adatbázis-kezelés

66
Az óra cél- és feladatrendszere – Alkotó munkára nevelés.
– Az esztétikai készség fejlesztése: igény és készség a számítógépes
A fejlesztendő attitűd, készségek, képességek, a tanítandó ismere-
produktum esztétikus formájának kialakítására, a program helyes
tek (fogalmak, szabályok stb.) és az elérendő fejlesztési szint, tu-
strukturálására.
dásszint megnevezése:
– Tudjon tömb típusú változót deklarálni, létrehozni.
– A tanuló tartsa be a számítógépes munka szabályait, különös tekin- – Legyen képes a tömbök elemeit absztrakt módon elérni.
tettel a balesetek megelőzésére. A berendezésekkel fegyelmezet- – Tudjon tömböt billentyűzetről feltölteni.
ten, a használati utasításokat pontosan követve dolgozzon. Legyen – Tudjon tömbelemeket vesszővel elválasztva megjeleníteni.
tisztában a számítógépes környezet alapvető ergonómiai kérdései- – Legyen képes algoritmust alkotni, megvalósítani, struktogramot
vel, az egészségvédelem lehetőségeivel számítógépes munkakör- készíteni, programkódot írni.
nyezetben. – Legyen képes a diagnosztizálásra, hibakeresésre.
– Felkelteni és folyamatosan ébren tartani a tanulók érdeklődését a
Fejlesztendő készségek, képességek
szoftverfejlesztés iránt. Kialakítani a tanulókban az informatikai
– Visszaemlékezés, kommunikációs képesség, feladatértelmezés, al-
ismereteik folyamatos bővítésének és megújításának igényét.
kalmazásválasztás, algoritmus alkotása, algoritmus tervezése, al-
– Korszerű alkalmazói készség kialakítása: meglévő, - Internet segít-
goritmus készítése, struktogram készítése, precizitás, pontosság,
ségével - új alkalmazások kiválasztása a feladat tervezéséhez.
önellenőrzés, diagnosztizálás, programkód írása, szintaktika köve-
– Az algoritmikus gondolkodás fejlesztése: a tanulók önálló, rend-
tése, absztrakt gondolkodás, logikus gondolkodás, algoritmikus
szerezett, logikus gondolkodásának fejlesztése; a logikus gondol-
gondolkodás, rendszerezés, figyelem felkeltése.
kodás lényeges a problémamegoldásban, és az algoritmusok elké-
szítésében, kódolásában. Fejlesztendő attitűd
– Legyen képes a NetBeans fejlesztői környezet kényelmi funkciói- – Legyen képes: számítógépet kezelni, szoftvereket használni.
nak készségszintű használatára. – Tudja önállóan használni a hálózatot és annak alapszolgáltatásait.
– Önálló munkára nevelés és felzárkóztatás.

67
– Legyen képes az adott probléma megoldásához kiválasztani az ál- – Legyen képes programozási feladatot ellátni, egy szoftvert elkészí-
tala ismert módszerek, eszközök és alkalmazások közül a megfele- teni (kódolni), Java programnyelven implementálni.
lőt. – Legyen képes értelmezni és javítani a NetBeans által megjelenített
– Ismerje fel és legyen képes különféle formákban megfogalmazni a hibaüzeneteket.
környezetében előforduló tevékenységek algoritmizálható részle- – Legyen képes programjait úgy megírni, hogy azt később Ő maga
teit. is, vagy tanulótársa is fel tudja használni.
– Adott feladat megoldásához legyen képes algoritmusokat megfo-
galmazni, tervezni és megvalósítani.

Az óra didaktikai feladatai

 Motiválás  Figyelem felhívása


 A figyelem felkeltése  Megerősítés
 A tanulók informálása a tanulási célokról.  Feladat kitűzése
 Aktivizálás  Gyakorlás
 Ismétlés  Visszacsatolás
 A szükséges előzetes ismeretek felidézése a feladat megoldá-  Általánosítás
sához.  Szemléletesség
 Fokozatosság  Rögzítés

Tantárgyi kapcsolatok: Adatbázis- és szoftverfejlesztés elmélet, Angol, Hálózati ismeretek I., Informatikai alapismeretek

68
Felhasznált források (tankönyv, munkafüzet, feladat- és szöveggyűjtemény, digitális tananyag, online források, szakirodalom stb.):

Szerző(k) Cím Kiadó ISBN kód

Vég Csaba – dr. Juhász István Java – start! Logos 2000 963 03 9005 1

Vég Csaba Instant Java/Java EE/SOA I-II Logos 2000 978-963-06-2601-9


978-963-06-2602-6
Dirk Louis – Peter Müller: Java 5 Belépés a programozás világába Panem 963 545 454 6
Benkő Tiborné, Tóth Bertalan Együtt könnyebb a programozás Java Computerbooks 963 618 337 6

Rogers Cadenhead Tanuljuk meg a Java programozási nyelvet Kiskapu Kft. 963 9637 07 6
24 óra alatt
Angster Erzsébet Objektumorientált tervezés és programozás 4KÖR Bt. 963 00 6262 3
Java 1 - 2 963 00 6263 1
Peter J. DePasquale Java zsebkönyv Kiskapu Kft. 963 9637 10 6
Nyékyné Gaizler Judit, Frohner Java 2 útikalauz programozóknak ELTE TTK Hallgatói Alapít- 963 463 305 6
Ákos, Kozsik Tamás (Szerkesztők) vány

Kathy Sierra, Bert Bates Agyhullám: Java Kiskapu Kft. 978 963 9637 79 5

http://docs.oracle.com/javase/7/docs/api/

Dátum: éééé. hh. nn.

69
NEVELÉSI-OKTATÁSI STRATÉGIA
MÓDSZEREK
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK TANULÓI MUNKAFORMÁK
ESZKÖZÖK
MEGJEGYZÉSEK
0 – 4’ Az órát előkészítő kérdések:
1. Hogyan tudunk létrehozni tömböket? Visszaemlékezés Ez az óra közvetlenül kapcsolódik
new operátorral Kommunikációs ké- az előző órához.
pesség
meg fogunk ismerkedni még egy lehetőséggel, az úgynevezett iniciali-
Beszélgetés
záló blokkal
Motiválás
2. Hogyan tudunk feltölteni tömböket?
A figyelem felkeltése
Frontális munka
egyesével, szekvenciával A tanulók informálása
a tanulási célokról.
szabály alapján, vezérlési szerkezettel, léptetéses ciklussal
felhasználó által (ezen az órán)
véletlenszerűen Aktivizálás
Ismétlés
3. Hogyan végeztük tömbök kiíratását? Fokozatosság Projektor
szóközzel, tabulátorral elválasztva NetBeans IDE 7.3
vesszővel elválasztva (ezen az órán) Java 1.5

Hozzanak létre a Gyakorlat13 projekt gyakorlat13 csomagjában egy Gyakor-


lat13_4 osztályt!

70
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

4 – 5’ Feladat kiadása: Projektor

Olvassa el figyelmesen a feladatot! Feladatértelmezés

1.) A feladathoz készítsen struktogramot! Hálózat

Hozzon létre egy dArray nevű, double elemtípusú tömböt, melynek 6


eleme van! Egyéni munka
a) Töltse fel a tömböt a felhasználó által megadott értékekkel!
b) Írassa ki a tömb elemeinek értékét egymás mellé tabulátorral elvá-
lasztva!

5 – 6’ Ne feledkezzen meg kiíratni a felhasználónak, hogy írjon be számot! Azt is Frontális munka
közölje mindig a felhasználóval, hogy hányadik elemet kéri be! Figyelem felhívása Elbeszélés
A felhasználó számára első elem a programban milyen indexű?
Válasz: 0
Megerősítés Megbeszélés
Hogy hivatkozunk a tömb egy elemére?
Válasz: A tömb neve és szögletes zárójelben az elem indexe.

6 – 13’ Készítse el a struktogramot, használja hozzá a legoptimálisabb programot! Feladat kitűzése Microsoft Office Excel 2007
Alkalmazásválasztás Structorizer

71
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

6 – 13’

Algoritmus alkotása Egyéni munka


Struktogram készítés Figyelemmel követem munkájukat.
Precizitás, pontosság

Aktivizálás
Gyakorlás

13 – 15’ Kérem, ellenőrizzék a kivetített struktogram alapján, hogy jól dolgoztak-e! Önellenőrzés Projektor
Ha nem tudják eldönteni jó-e amit elkészítettek, szóljanak, segítek. Diagnosztizálás
Az esetleges hibákat javítsák!

15 – 16’ Kódolás előkészítése:


Mit kell tennünk, hogy a felhasználó adatokat tudjon bevinni a programba a Ismétlés Megbeszélés
billentyűzeten keresztül?
Válasz: Billentyűzetadatok beolvasására a Scanner osztály szolgál. Létre kell
hoznunk egy Scanner típusú objektumot. Az osztálynak tudnia kell, hogy
honnan jönnek az adatok. Billentyűzet esetén ez a System.in.

72
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

15 – 16’ Mi a Java alapértelmezett csomagja? Melyik csomagban van a Scanner


osztály? A szükséges előzetes Beszélgetés
Válasz: A lang az alapértelmezett csomag, Scanner osztály a util csomagban ismeretek felidézése a
feladat megoldásához.
van, ezért importálni kell.
Melyik metódus szolgál double típusú számok beolvasására?
Válasz: A nextDouble() metódus szolgál double típusú számok beolvasására.
Számok beolvasása esetén mire kell figyelnünk?
Válasz: A megfelelő metódus nem olvassa ki az Entert, ezért a nextLine()
metódus segítségével erről gondoskodnunk kell.

16 – 17’ Kódoljon a struktogram alapján!

Programkód írása

Egyéni munka
Precizitás, pontosság

Számítógép
Java 1.5
NetBeans IDE 7.3

73
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

17 – 22’

Egyéni munka

Szintaktika követése
Számítógép
Java 1.5
NetBeans IDE 7.3

22 – 23’ Kérem, ellenőrizzék a kivetített kód alapján, hogy jól dolgoztak-e! Önellenőrzés Projektor
Az esetleges hibákat javítsák! Diagnosztizálás

23 – 24’ 2.) Feladat előkészítése I.


Gondoljuk át a tömb elemeinek indexelését a length konstans Visszaemlékezés Megbeszélés
felhasználásával! Példaként vegyünk egy 6 elemű tömböt.
Mi a tömb utolsó elemének indexe?
Visszacsatolás Frontális munka
Válasz: A tömb utolsó elemének indexe 5.
Utolsó előtti elemének indexe? 4
Hogyan hivatkozunk ezen indexű elemekre, ha a tömb neve mondjuk dArray?
Válasz: Utolsó elemre: dArray[5]
Utolsó előtti elemre: dArray[4]

74
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

24 – 28’ Hogyan határozhatjuk meg a length konstanssal ezen tömb hosszát?


Válasz: dArray.length
Nézzük meg, ha általánosságban szeretnénk megfogalmazni, nem konkrét
Absztrakt gondolkodás Megbeszélés
értékekkel, akkor mit mondhatunk az indexekről?
Válasz: A tömb utolsó elemének indexe dArray.length – 1
Általánosítás Frontális munka
A tömb utolsó előtti elemének indexe dArray.length – 2
Hogyan hivatkozunk ezen indexű elemekre, ha a tömb neve mondjuk dArray?
Válasz: Utolsó elemre: dArray[dArray.length – 1]
Utolsó előtti elemre: dArray[dArray.length – 2]

Segít a megértésben a hálózatra feltett kép, elemezzük! TombHossza_Index.png


Szemléltetés

Magyarázat
Szemléletesség

Frontális munka
Hálózat
Projektor

75
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

A kép egy részletét, ami kinagyítja a lényeget, szintén feltettem a hálózatra, le


tudják tölteni! TombHossza_Index_resze.png

Elbeszélés

Rögzítés
Megerősítés Frontális munka

Hálózat

Projektor

28 – 29’ Feladat kiadása: Olvassa el figyelmesen a feladatot! Projektor


Hálózat
2.) A feladathoz készítsen struktogramot! Feladatértelmezés
Egyéni munka
Írassa ki a dArray tömb elemeit vesszővel elválasztva úgy, hogy az utolsó
elem után ne legyen vessző! Keressen többféle megoldást!

76
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

29 – 32’ 2.) Feladat további előkészítése II.


Próbálja megfogalmazni lépésről lépésre, hogy mit tesz!
Válasz: Kiíratom az első elemet, ha nem az utolsó elem vesszőt teszek,
Logikus gondolkodás
kiíratom a következő elemet, ha nem az utolsó elem, vesszőt teszek, … és így
tovább … kiíratom a következő elemet, ez az utolsó elem, nem teszek vesszőt.
Fokozatosság
Mikor teszek vesszőt?
Válasz: Mindig teszek vesszőt, ha nem az utolsó elemnél vagyok.
Milyen elemindexnél teszek vesszőt? Algoritmikus gondol-
kodás Megbeszélés
Válasz: Akkor teszek vesszőt, ha az elemindex kisebb, mint az utolsó elem
indexe.
Algoritmus tervezése
Mitől függ, hogy teszek-e vesszőt?
Frontális munka
Válasz: Egy feltételtől függ, méghozzá attól, hogy az elemindex kisebb-e, mint
az utolsó elem indexe. Algoritmus alkotása

Milyen vezérlési szerkezetet használok ennek megvalósítására?


Válasz: Elágazást.
Hányszor kell megvizsgálnom ezt a feltételt?
Válasz: Ahány eleme van a tömbnek, annyiszor kell megvizsgálnom a feltételt.
Milyen vezérlési szerkezetet használok ennek megvalósítására?
Válasz: Léptetéses ciklust fogok használni.

77
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

32 – 35’ Készítsék el a struktogramot, használják hozzá a legoptimálisabb programot! Struktogram készítés Microsoft Office Excel 2007
Precizitás, pontosság Structorizer
Aktivizálás

Algoritmus készítése
Struktogram készítése
Egyéni munka

35 – 36’ Kérem, ellenőrizzék a kivetített struktogram alapján, hogy jól dolgoztak-e! Önellenőrzés Projektor
Az esetleges hibákat javítsák! Diagnosztizálás

A struktogram alapján kódoljanak! Feladat kitűzése

78
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

36 – 41’ Programkód írása


Számítógép
Java 1.5
Precizitás, pontosság
NetBeans IDE 7.3

Szintaktika követése

41 – 42’ Kérem, ellenőrizzék a kivetített kód alapján, hogy jól dolgoztak-e! Önellenőrzés Projektor
Az esetleges hibákat javítsák! Diagnosztizálás

42 – 44’ Mivel gyarapítottuk a tudásunkat a mai órán ? Rendszerezés Együttműködő oktatási mód-
szer
Válasz: Fel tudunk tölteni tömböket a billentyűzetről és ki tudjuk íratni a tömb
A KÖVETKEZŐ ÓRA MEGTAR-
elemeit vesszővel elválasztva. Figyelem felkeltése
TÁSÁRA KÖZVETLENÜL EZ
Ezzel az utolsó feladattal fogjuk folytatni a következő órát! UTÁN AZ ÓRA UTÁN KERÜL
SOR, EZÉRT NINCS HÁZI FEL-
ADAT.

79
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

44 – 45’ Tanulók munkájának értékelése Értékelés Megbeszélés


Egész órát végig kíséri az értékelés.

80
Feladatok

1.) A feladathoz készítsen struktogramot! 2.) A feladathoz készítsen struktogramot!


Hozzon létre egy dArray nevű, double elemtípusú tömböt, mely- Írassa ki a dArray tömb elemeit vesszővel elválasztva úgy, hogy
nek 6 eleme van! az utolsó elem után ne legyen vessző!
a) Töltse fel a tömböt a felhasználó által megadott értékekkel! Keressen többféle megoldást!
b) Írassa ki a tömb elemeinek értékét egymás mellé tabulátorral
elválasztva!

81
Reflexió

A diákok mind a két feladathoz kellően motiváltak voltak, anélkül, dArray.length – 1 dArray.length – 2 dArray[dArray.length – 1] dArray[dArray.length – 2]

hogy bármilyen erőfeszítést tettem volna ennek érdekében, bár meg-


jegyzem, hogy szünetben való beszélgetésünk alkalmával felmerült
már ennek igénye részükről. Egyszóval mind a billentyűzetről való fel- Ez nehézségekbe ütközött és ezért is örültem nagyon, hogy készítettem
töltés, mind a tömbelemek vesszővel elválasztva történő megjelenése egy képet, ami mindezt szemléletesen megmutatta nekik és ez sokat is
érdekelte őket. Még az algoritmikus gondolkodásuk is szárnyakat ka- segített.
pott, holott ez azért nehézségekbe szokott ütközni. Tulajdonképpen rá-
jöttek az egyik lehetséges algoritmusra és pont arra, amelyiket erre az
órára beterveztem, de ha nem így lett volna, akkor pusztán felcserélőd-
tek volna a lehetséges sorrendek. A pontos megfogalmazásban segíte-
nem kellett, arra mindig különös gondot fordítok, hogy világosan, pre-
cízen és pontosan fogalmazzanak (egyik diáknál ennek organikus oka
van, vele a kommunikáció nagyon nehézkes élő szó formájában), a lé-
nyeg, hogy erre törekszem, ezáltal bennük is próbálom kialakítani az
TombHossza_Index.png
ez iránti igényt.
Mindezzel a következő órát is előkészítettem. Ennek megértése na-
Nagyon fontos a programozás oktatása során az absztrakt gondolkodás
gyon fontos a tömbökkel, illetve az indexekkel való foglalkozás so-
fejlesztése, ezt a célt szolgálta a tömbelemek indexeinek, illetve a
rán.
tömbelemek elérésének általános formában való megjelenítése, ami
szükséges a következő megoldás során, úgymint:

82
ÓRATERVEZET - TÖMB ELEMEINEK KIÍRATÁSA VESSZŐVEL ELVÁLASZTVA. INICIALIZÁLÓ BLOKK.

A pedagógus neve: Kovács Henriette Tantárgy: Adatbázis- és szoftverfejlesztés gyakorlat

A szakmacsoport száma és megnevezése: 7. Informatika Programozási nyelv: Java

A szakképesítés azonosító száma: 54 213 05 Fejlesztői környezet: NetBeans IDE 7.3

A szakképesítés megnevezése: Szoftverfejlesztő Osztály - csoport: I/13. S - SZ2

Iskolai rendszerű szakképzés (a szakképzési évfolyamok Az óra tananyaga: Tömb elemeinek kiíratása vesszővel elvá-
száma: 2) lasztva. Inicializáló blokk.

Szakmai követelménymodul: 10817-12 Hálózatok, programo-


zás és adatbázis-kezelés

83
Az óra cél- és feladatrendszere – Önálló munkára nevelés és felzárkóztatás.
– Alkotó munkára nevelés.
A fejlesztendő attitűd, készségek, képességek, a tanítandó ismere-
– Az esztétikai készség fejlesztése: igény és készség a számítógépes
tek (fogalmak, szabályok stb.) és az elérendő fejlesztési szint, tu-
produktum esztétikus formájának kialakítására, a program helyes
dásszint megnevezése:
strukturálására.
– A tanuló tartsa be a számítógépes munka szabályait, különös te- – Legyen képes az algoritmust megérteni, felismerni, elemezni, vég-
kintettel a balesetek megelőzésére. A berendezésekkel fegyelme- rehajtani, alkotni, megvalósítani, módosítani, átalakítani, ter-
zetten, a használati utasításokat pontosan követve dolgozzon. Le- vezni.
gyen tisztában a számítógépes környezet alapvető ergonómiai kér- – Tudjon tömb típusú változót deklarálni, létrehozni, feltölteni.
déseivel, az egészségvédelem lehetőségeivel számítógépes mun- – Legyen képes a tömbök elemeit elérni.
kakörnyezetben. – Tudjon tömböt többféle módon és többféle algoritmussal megjele-
– Felkelteni és folyamatosan ébren tartani a tanulók érdeklődését a níteni.
szoftverfejlesztés iránt. Kialakítani a tanulókban az informatikai – Tudjon tömböt létrehozni inicializáló blokk segítségével.
ismereteik folyamatos bővítésének és megújításának igényét. – Ismerje a hatékonyság-vizsgálat jelentőségét.
– Korszerű alkalmazói készség kialakítása: meglévő, - Internet se- – Tudja a feltételvizsgálatok, létrejött objektumok számát meghatá-
gítségével - új alkalmazások kiválasztása a feladat tervezéséhez és rozni.
legyenek képesek arra, hogy mindezeket célszerűen használják.
– Az algoritmikus gondolkodás fejlesztése: a tanulók önálló, rend-
szerezett, logikus gondolkodásának fejlesztése; a logikus gondol-
kodás lényeges a problémamegoldásban, és az algoritmusok elké-
szítésében, kódolásában.
– Legyen képes a NetBeans fejlesztői környezet kényelmi funkció-
inak készségszintű használatára.

84
– Ismerje fel és legyen képes különféle formákban megfogalmazni
Fejlesztendő készségek, képességek
a tevékenységek algoritmizálható részleteit.
– Visszaemlékezés, kommunikációs képesség, programkód átalakí-
– Adott feladat megoldásához legyen képes algoritmusokat megfo-
tása, módosítása, önellenőrzés, struktogram olvasása, megértése,
galmazni, tervezni és megvalósítani.
struktogram elemzése, algoritmus megfogalmazása, algoritmikus
– Legyen képes programozási feladatot ellátni, egy szoftvert elké-
gondolkodás, programkód írása, precizitás, pontosság, szintaktika
szíteni (kódolni), Java programnyelven implementálni.
követése, diagnosztizálás, hibakeresés, programkód olvasása,
– Legyen képes programjait úgy megírni, hogy azt később Ő maga
programkód megértése, analizálása, állománykezelés, döntéské-
is, vagy tanulótársa is fel tudja használni.
pesség, hatékonyság-vizsgálat.

Fejlesztendő attitűd
– Legyen képes: számítógépet kezelni, szoftvereket használni.
– Tudja önállóan használni a hálózatot és annak alapszolgáltatásait.
– Legyen képes az adott probléma megoldásához kiválasztani az ál-
tala ismert módszerek, eszközök és alkalmazások közül a megfe-
lelőt.

85
Az óra didaktikai feladatai

 Motiválás  Alkalmazás
 A figyelem felkeltése  Megerősítés
 A tanulók informálása a tanulási célokról.  Feladatkitűzés
 Aktivizálás  Folyamat elemzése
 Ismétlés  Következtetés, általánosítás
 Fokozatosság  A tények elemzése
 Feladat továbbfejlesztése  Új ismeret közlése
 Visszacsatolás  Rögzítés
 Ismétlés  Gyakorlás
 Rendszerezés

Tantárgyi kapcsolatok: Adatbázis- és szoftverfejlesztés elmélet, Matematika, Angol, Hálózati ismeretek I., Informatikai alapismeretek

86
Felhasznált források (tankönyv, munkafüzet, feladat- és szöveggyűjtemény, digitális tananyag, online források, szakirodalom stb.):

Szerző(k) Cím Kiadó ISBN kód

Vég Csaba – dr. Juhász István Java – start! Logos 2000 963 03 9005 1

Vég Csaba Instant Java/Java EE/SOA I-II Logos 2000 978-963-06-2601-9


978-963-06-2602-6

Dirk Louis – Peter Müller: Java 5 Belépés a programozás világába Panem 963 545 454 6

Benkő Tiborné, Tóth Bertalan Együtt könnyebb a programozás Java Computerbooks 963 618 337 6

Rogers Cadenhead Tanuljuk meg a Java programozási nyelvet Kiskapu Kft. 963 9637 07 6
24 óra alatt

Angster Erzsébet Objektumorientált tervezés és programozás 4KÖR Bt. 963 00 6262 3


Java 1 - 2 963 00 6263 1

Peter J. DePasquale Java zsebkönyv Kiskapu Kft. 963 9637 10 6

Nyékyné Gaizler Judit, Frohner Java 2 útikalauz programozóknak ELTE TTK Hallgatói Alapít- 963 463 305 6
Ákos, Kozsik Tamás (Szerkesztők) vány

Kathy Sierra, Bert Bates Agyhullám: Java Kiskapu Kft. 978 963 9637 79 5

http://docs.oracle.com/javase/7/docs/api/

Dátum: éééé. hh. nn.

87
NEVELÉSI-OKTATÁSI STRATÉGIA
MÓDSZEREK
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK TANULÓI MUNKAFORMÁK
ESZKÖZÖK
MEGJEGYZÉSEK
0 – 3’ Az órát bevezető kérdések:
1. Hogyan tudunk létrehozni tömböket? Visszaemlékezés Ez az óra közvetlenül kapcsolódik
new operátorral Kommunikációs ké- az előző órához. Az utolsó feladatot
pesség
meg fogunk ismerkedni még egy lehetőséggel, az úgynevezett iniciali- folytatjuk.
záló blokkal (mai órán)
Beszélgetés
Motiválás
2. Hogyan tudunk feltölteni tömböket?
A figyelem felkeltése
egyesével, szekvenciával A tanulók informálása
Frontális munka
szabály alapján, vezérlési szerkezettel, léptetéses ciklussal a tanulási célokról.

felhasználó által
Projektor
véletlenszerűen Aktivizálás
Ismétlés Számítógép
3. Hogyan végeztük tömbök kiíratását? NetBeans IDE 7.3
Fokozatosság
szóközzel, tabulátorral elválasztva Java 1.5
vesszővel elválasztva (folytatjuk)
A Gyakorlat13 projekt gyakorlat13 csomagjában létrehozott Gyakorlat13_4
osztályban folytatjuk a kódolást!

88
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

3 – 4’ 3.) Előző órai feladat folytatása. Visszacsatolás Projektor


A feladathoz készítsen struktogramot! Feladat továbbfejlesztése Hálózat
Írassa ki a dArray tömb elemeit vesszővel elválasztva úgy, hogy az utolsó
elem után ne legyen vessző!
Keressen többféle megoldást!

4 – 5’ Kódoljuk le egyszerűbben az elágazást! A kétágú elágazást mivel tudnánk Ismétlés Tábla


helyettesíteni? Alkalmazás Megbeszélés
Válasz: A feltételes kiértékelés segítségével egyszerűbb lenne a kód. Frontális munka
 Mi a szintaktikája?
Válasz: feltétel ? kif1 : kif2
Ha a feltétel igaz, akkor kifejezés1, egyébként kifejezés2 kerül kiértékelésre.

5 – 9’ Programkód átalakítása, Egyéni munka


módosítása
Számítógép
NetBeans IDE 7.3
Java 1.5
Megerősítés

9 – 10’ A kivetített kód alapján ellenőrizze munkáját, ha szükséges javítsa a hibákat! Önellenőrzés Projektor
. Hibakeresés

10 – 13’ Hány feltételvizsgálat történik a kódban?

89
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

6 elemű tömb esetén: Hatékonyság-vizsgálat


0<6 Magyarázat
0<5
Folyamat elemzése Szemléltetés
1<6
1<5
2<6
2<5 Tábla
3<6 6*2+1
3<5
4<6 Frontális munka
4<5
5<6
5<5 Következtetés, általánosí-
tás
6<6

Válasz: dArray.length * 2 + 1

13 – 15’ Olvassa el a következő kódrészletet, elemezze, értelmezze! Programkód olvasása Projektor


Programkód megértése, Gyakorlat13_4_2_II.png
analizálása

Egyéni munka
Hatékonyság-vizsgálat

Hány feltételvizsgálat történik, hány String objektum keletkezik?

90
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

15 – 16’ Mi történik a kódban? Kommunikációs képes- Tanulói elbeszélés


Válasz: Egy üres Stringhez mindig hozzáfűzöm a tömb egy elemét és egy ség

vesszőt, az utolsó elemnél csak az elemet.


dArray.length * 2 + 1 feltételvizsgálat történik.
dArray.length + 1 String objektum keletkezik.

16 – 19’ Kódolja le String objektum felhasználásával a tömb vesszővel történő Visszaemlékezés Egyéni munka
kiíratását!

19 – 20 Elemezzék a következő struktogramot, és fogalmazzák meg szavakkal az Projektor


algoritmust, hogyan kerülnek a tömb elemei közé a vesszők!

Hálózat
Gyakorlat13_4_2_III_ Struk-
togram. png

Struktogram olvasása,
megértése
Struktogram elemzése
Frontális munka

Hatékonyság-vizsgálat

Hány feltételvizsgálat történik?

91
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

20 – 21’ Emlékezzünk vissza, melyik elem indexe a dArray.length – 2? Visszacsatolás Szemléltetés


Projektor

Beszélgetés

Válasz: A tömb utolsó előtti elemének indexe.

21 – 23’ Struktogram elemzése Algoritmikus gondolko- Tanulói elbeszélés


Válasz: Algoritmus: A tömb első elemétől kezdve végigmegyek a tömb dás
Algoritmus megfogalma-
elemein, de csak az utolsó előtti elemig. Mindig azt csinálom, hogy kiíratom zása
az elemet és egy vesszőt.
Aztán kiíratom a tömb utolsó elemét!
Válasz: dArray.length feltételvizsgálat történik.

A struktogram alapján kódoljanak! Feladatkitűzés

92
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

23 – 26’ Programkód írása Egyéni munka


Precizitás, pontosság Számítógép
Szintaktika követése NetBeans IDE 7.3
Java 1.5

26 – 27’ Ellenőrizze munkáját! Önellenőrzés Projektor


Diagnosztizálás, hibake-
resés

27 – 28’ A 3 kiíratás közül melyikben történik a legkevesebb feltételvizsgálat? A tények elemzése Frontális munka
Válasz: III-ban Megbeszélés
Melyik kiíratást tartja a legkönnyebnek?  Hatékonyság problémája.

28 – 29’ Óra elején már említettem, hogy a new operátor nélkül is létre lehet hozni A figyelem felkeltése
méghozzá sokkal egyszerűbben tömböket. Nézzük meg, hogyan!

29 – 30’ Deklaráláskor a tömb elemeinek kezdeti értéket adhatunk úgynevezett


inicializáló blokkal. Szintaktikája: Új ismeret közlése Elbeszélés
<elemtípus>[] <tömbAzonosító> = {<érték0>, <érték1>,…};
A kapcsos zárójelek által határolt blokkot inicializáló blokknak nevezzük.
Tábla
Ebben az esetben a tömb mérete pontosan akkora lesz, amennyi a felsorolt
értékek száma.
int[] iArray = {0, 20, 40, 60, 100};

93
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

30 – 31’ Gyakorlat13_4 .java osztályt nevezze át Gyakorlat13_4_5.java osztályra!

Irányított, önálló munka

Állománykezelés
Projektor

NetBeans IDE 7.3


Számítógép

Hozzon létre egy Gyakorlat13_5.java osztályt és a következő feladatot ebben


végezze el!

30 – 31’ Feladat:

Hozzuk létre az iArray nevű int elemtípusú tömböt a táblára felírt elemekkel: Feladatkitűzés Elbeszélés
0, 20, 40, 60, 100! Írassa ki ez elemeket egymás mellé, vesszővel elválasztva!

94
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

31 – 34’ Projektor

NetBeans IDE 7.3


Magyarázat
Frontális munka
Rögzítés

Egyéni munka
Döntésképesség

34 – 38’ Feladat

2.) Az inicializáló blokk felhasználásával hozzon létre Differenciálás


a) egy mgh nevű tömböt, mely az angol ábécé magánhangzóit tartal- ketten az a), egy diák a b) feladatot
Gyakorlás
mazza! készíti el

Írassa ki a tömb elemeit vesszővel elválasztva! Egyéni munka


b) egy szep nevű, logikai elemtípusú tömböt, mely a lehetséges logikai NetBeans IDE 7.3
értékeket tartalmazza!
Írassa ki a tömb elemeit vesszővel elválasztva!

95
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

38 – 39’ Ellenőrizzék

Önellenőrzés Egyéni munka


Angol ábécé ismerete szükséges

Projektor

38 – 39’

Önellenőrzés Egyéni munka


Projektor

39 – 43’ Rendszerezés: Rendszerezés Vita

Azon tény megállapítása, hogy nem elegendő egy megoldás megtalálása, min- A KÖVETKEZŐ ÓRA MEGTAR-
dig meg kell győződnünk róla, hogy az optimális-e, hatékony-e! TÁSÁRA KÖZVETLENÜL EZ
UTÁN AZ ÓRA UTÁN KERÜL
Melyik vesszővel való kiíratással fog dolgozni az elkövetkezőkben?
SOR, EZÉRT NINCS HÁZI FEL-
Ha a tömbit inicializáló blokkal hozom létre, még mi történik a létrehozáson ADAT.
kívül?

96
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

Válasz: Inicializáló blokkal való létrehozáskor a tömböt fel is töltöm elemek- Megbeszélés
kel. Frontális munka

43 – 45’ Tanulók munkájának értékelése Értékelés Megbeszélés


Egész órát végig kíséri az értékelés.

97
TÁBLAKÉP 1.

Feltételes kiértékelés
feltétel ? kif1 : kif2

Feltételvizsgálatok száma I., II.: Feltételvizsgálatok száma III.:

0 < 6 0 < 5
0 < 5 1 < 5
1 < 6 2 < 5 6
1 < 5 3 < 5 dArray.length
2 < 6
2 < 5 4 < 5
3 < 6 6 * 2 + 1 5 < 5
3 < 5 dArray.length * 2 + 1
4 < 6
4 < 5
5 < 6
5 < 5
6 < 6

98
TÁBLAKÉP 2.

Inicializáló blokk

<elemtípus>[] <tömbAzonosító> = {<érték0>, <érték1>,…};

int[] iArray = {0, 20, 40, 60, 100};

99
Feladatok

1.) Előző órai feladat folytatása. 2.) Az inicializáló blokk felhasználásával hozzon létre
Írassa ki a dArray tömb elemeit vesszővel elválasztva úgy, hogy a) egy mgh nevű tömböt, mely az angol ábécé magánhangzóit
az utolsó elem után ne legyen vessző! tartalmazza!
Keressen többféle megoldást! Írassa ki a tömb elemeit vesszővel elválasztva!
b) egy szep nevű, logikai elemtípusú tömböt, mely a lehetséges
logikai értékeket tartalmazza!

100
Reflexió

Ezt az órát úgy terveztem meg, hogy e tantárgy szempontjából az egyik hogy ez az első ránézésre banálisnak tűnő feladat is milyen fejlesztési
legfontosabb informatikai kompetencia komponenssel, az algoritmi- lehetőségeket rejt magában. A diákok emellett élvezték, hogy mindig
kus gondolkodással és annak fejlesztésével foglalkoztam. Mindennap- más típusú feladatokat kellett végrehajtaniuk, hol algoritmust kitalálni,
jainkban, mind a tanulásban, mind a munkában lépten-nyomon algo- hol megérteni, hol átalakítani, hol újabb lehetőségeket keresni, így ér-
ritmusokat hajtunk végre, mégis e tevékenységsorozatok megfogalma- deklődésüket az egész feladat során fenn tudtam tartani. Azt tapasztal-
zása gondot okoz. Ezen probléma kialakulásához több tényező is hozzá tam, hogy az is nagyon jó motiváló erő számukra, hogy hol alkalmazói,
járul, mint például azon egyszerű ok, hogy az emberek nem beszélget- hol fejlesztői környezetben dolgoznak.
nek egymással, keveset olvasnak, nem kommunikálnak, elmennek Az óra végére egy új ismereteket feldolgozó egységet választottam,
egymás mellett, magukba fordulnak. Ezt figyelembe véve, óráimon így sor került új ismeretek elsajátítására is. Sokat töprengtem, hogy
mindig törekszem arra, hogy diákjaimat beszéltessem, hogy kommu- vajon jó gondolat-e, jó ötlet-e az óra végén bevezetni egy új fogalmat.
nikáljunk, mindezzel hozzájárulva ahhoz, hogy szakmai nyelven is Az előző órai feladatot mindenképpen folyamatában szerettem volna
pontosan, precízen fogalmazzák meg észrevételeiket és így közvetett hogy lássák a diákok (hat óra egy napon, egymás után van megtartva
módon is fejlesszem algoritmikus gondolkodásukat. minden héten), így a kérdés csak az volt, hogy az óra végére, vagy a
A vesszővel való kiíratás feladatkörét tekintve, a különböző megköze- következő óra elejére tegyem, és az órát egy gyakorló feladattal zár-
lítésű részfeladatok egy sor, az algoritmikus gondolkodás kompetencia jam. Ez az új anyag viszont annyira egyszerű, úgy éreztem inkább fel-
szintjeit képező összetevőket fejleszt. Ezek: az algoritmus megértése, dobná az órát, új erőt kapnának a diákok, és gondoltam kipróbálom.
azaz megérteni, hogy mit kell tenni és megérteni, hogy miért azt kell Megérzésem valóra vált, örültek az új tömbfeltöltési lehetőségnek és a
tenni, az algoritmus felismerése, az algoritmus elemzése, az algoritmus differenciálás mindenképpen a feladat megoldására sarkallta őket.
végrehajtása, az algoritmus alkotása, az algoritmus megvalósítása, az Ennek az órának a felépítéséért tett lépések sorozata megérte a fárado-
algoritmus módosítása, átalakítása, az algoritmus tervezése. Láthatjuk, zást, a diákok élveztek a változatosságot.

101
ÓRATERVEZET - VÉLETLENSZÁMOK GENERÁLÁSA. TÖMB ELEMEINEK FELTÖLTÉSE
VÉLETLENSZÁMOKKAL.

A pedagógus neve: Kovács Henriette Tantárgy: Adatbázis- és szoftverfejlesztés gyakorlat

A szakmacsoport száma és megnevezése: 7. Informatika Programozási nyelv: Java

A szakképesítés azonosító száma: 54 213 05 Fejlesztői környezet: NetBeans IDE 7.3

A szakképesítés megnevezése: Szoftverfejlesztő Osztály - csoport: I/13. S - SZ2

Iskolai rendszerű szakképzés (a szakképzési évfolyamok Az óra tananyaga: Véletlenszámok generálása. Tömb elemei-
száma: 2) nek feltöltése véletlenszámokkal.

Szakmai követelménymodul: 10817-12 Hálózatok, programo-


zás és adatbázis-kezelés

102
Az óra cél- és feladatrendszere

A fejlesztendő attitűd, készségek, képességek, a tanítandó ismere- – Tudjon tömb típusú változót deklarálni, létrehozni, feltölteni.
tek (fogalmak, szabályok stb.) és az elérendő fejlesztési szint, tu- – Legyen képes a tömbök elemeit elérni.
dásszint megnevezése: – Tudjon tömböt megjeleníteni.
– Ismerje az üres tömb és üres String fogalmakat.
– A tanuló tartsa be a számítógépes munka szabályait, különös tekin-
– Tudja mi a különbség a Math osztály random() metódusa által
tettel a balesetek megelőzésére. A berendezésekkel fegyelmezet-
adott és a Random osztály metódusai által generált számok között.
ten, a használati utasításokat pontosan követve dolgozzon. Legyen
– Ismerje az álvéletlen szám és véletlenszám fogalmakat.
tisztában a számítógépes környezet alapvető ergonómiai kérdései-
– Tudjon intervallumot bővíteni és eltolni.
vel, az egészségvédelem lehetőségeivel számítógépes munkakör-
– Tudjon véletlenszámot előállítani.
nyezetben.
– Tudja tömb elemeit véletlenszámmal feltölteni.
– Felkelteni és folyamatosan ébren tartani a tanulók érdeklődését a
– Tudja mikor és hogyan kell egy osztályt importálni.
szoftverfejlesztés iránt.
– Tudjon tesztelni, diagnosztizálni.
– Korszerű alkalmazói készség kialakítása.
– Tudja a futási eredményt értelmezni.
– Az algoritmikus gondolkodás fejlesztése.
– Ismerje a következő kivételeket: ArrayIndexOutOfBoundsExcep-
– Legyen képes a NetBeans fejlesztői környezet kényelmi funkciói-
tion, NegativeArraySizeException, InputMismatchException.
nak készségszintű használatára.
– Önálló munkára nevelés és felzárkóztatás.
– Alkotó munkára nevelés.
– Az esztétikai készség fejlesztése: igény és készség a számítógépes
produktum esztétikus formájának kialakítására, a program helyes
strukturálására.
– Tudja tömb elemszámát bekérni.

103
– Ismerje fel és legyen képes különféle formákban megfogalmazni a
Fejlesztendő készségek, képességek
környezetében előforduló tevékenységek algoritmizálható részle-
Visszaemlékezés, kommunikációs képesség, rendszerező képesség,
teit.
szakmai nyelvű beszédkészség, feladatértelmezés, állománykezelés,
– Adott feladat megoldásához legyen képes algoritmusokat megfo-
hallott szakmai szöveg megértése, programkód írása, szintaktika köve-
galmazni, tervezni és megvalósítani.
tése, precizitás, pontosság, futási eredmény analizálása, algoritmikus
– Legyen képes alkalmazást (szoftvert) tervezni, fejleszteni, futtatni,
gondolkodás, algoritmus tervezése, struktogram olvasása, értelmezése,
tesztelni és magyarázó megjegyzésekkel ellátni, előkészítve ezzel
önellenőrzés, tesztelés, diagnosztizálás, hibakeresés, olvasott angol
a dokumentáció elkészítését.
nyelvű szakmai szöveg megértése, algoritmus alkotása.
– Legyen képes programozási feladatot ellátni, egy szoftvert elkészí-
Fejlesztendő attitűd teni (kódolni), Java programnyelven implementálni.
– Legyen képes: számítógépet kezelni, szoftvereket használni. – Legyen képes értelmezni és javítani a NetBeans által megjelenített
– Tudja önállóan használni a hálózatot és annak alapszolgáltatásait. hibaüzeneteket.
– Legyen képes az adott probléma megoldásához kiválasztani az ál- – Legyen képes programjait úgy megírni, hogy azt később Ő maga
tala ismert módszerek, eszközök és alkalmazások közül a megfele- is, vagy tanulótársa is fel tudja használni.
lőt. – Legyen képes eligazodni és tudjon keresni a Java hivatalos doku-
mentációjában.

104
Az óra didaktikai feladatai

 Ismétlés  Következtetés
 Rendszerezés  Információ elemzése
 Motiválás  A tények elemzése
 A figyelem felkeltése  Információ gyűjtése
 Tanulók informálása a tanulási célokról  Új ismereteket megalapozó tények biztosítása
 Feladatkitűzés  Alkalmazás
 Visszacsatolás  Fokozatosság
 Összehasonlítás  Összefoglalás
 Aktivizálás  A házi feladat kijelölése
 Fogalomalkotás  Értékelés
 Gyakorlás

Tantárgyi kapcsolatok: Adatbázis- és szoftverfejlesztés elmélet, Matematika, Angol, Hálózati ismeretek I., Informatikai alapismeretek

105
Felhasznált források (tankönyv, munkafüzet, feladat- és szöveggyűjtemény, digitális tananyag, online források, szakirodalom stb.):

Szerző(k) Cím Kiadó ISBN kód

Vég Csaba – dr. Juhász István Java – start! Logos 2000 963 03 9005 1

Vég Csaba Instant Java/Java EE/SOA I-II Logos 2000 978-963-06-2601-9


978-963-06-2602-6

Dirk Louis – Peter Müller: Java 5 Belépés a programozás világába Panem 963 545 454 6
Benkő Tiborné, Tóth Bertalan Együtt könnyebb a programozás Java Computerbooks 963 618 337 6

Rogers Cadenhead Tanuljuk meg a Java programozási nyelvet Kiskapu Kft. 963 9637 07 6
24 óra alatt
Angster Erzsébet Objektumorientált tervezés és programozás 4KÖR Bt. 963 00 6262 3
Java 1 - 2 963 00 6263 1
Peter J. DePasquale Java zsebkönyv Kiskapu Kft. 963 9637 10 6
Nyékyné Gaizler Judit, Frohner Java 2 útikalauz programozóknak ELTE TTK Hallgatói Ala- 963 463 305 6
Ákos, Kozsik Tamás (Szerkesztők) pítvány

Kathy Sierra, Bert Bates Agyhullám: Java Kiskapu Kft. 978 963 9637 79 5

http://docs.oracle.com/javase/7/docs/api/

Dátum: éééé. hh. nn.

106
NEVELÉSI-OKTATÁSI STRATÉGIA
MÓDSZEREK
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK TANULÓI MUNKAFORMÁK
ESZKÖZÖK
MEGJEGYZÉSEK
0 – 3’ Bevezetés: Számítógép
Tömbök deklarálása Bekapcsoltatom a gépeket.
Tömbök létrehozása Visszaemlékezés
Tömbök mérete  Kommunikációs ké-
pesség
mai órán: Rendszerező képesség
0 esetén mi jön létre és Szakmai nyelvű be- Megbeszélés
szédkészség
negatív szám esetén mi történik?
Tömbök feltöltése 
Frontális munka
Ismétlés
mai órán:
Rendszerezés
véletlenszámokkal és nem álvéletlen számokkal  Motiválás
új osztály megismerése A figyelem felkeltése
Tanulók informálása a
Tömbök kiíratása tanulási célokról
Tömbelemek indexe
Tömbelemek elérése
ArrayIndexOfBoundsException

107
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

3 – 6’ Feladat:

1.) Írjon programot, Feladatkitűzés Hálózat


a) melyben létrehoz egy egész számokból álló, a felhasználó által meg- Projektor

adott elemszámú tömböt, Feladatértelmezés


b) feltölti a tömb elemeit olyan véletlenszámokkal, melyek a [-6, 16] zárt
intervallumba esnek,
c) kiíratja a tömböt úgy, hogy elemei egymástól a ’|’ karakterrel legye-
Számítógép
nek elválasztva, de az utolsó elem után ne legyen ’|’ karakter! NetBeans IDE 7.3
Létrehozni saját hálózati meghajtón: Állománykezelés Java 1.5

Gyakorlat13 projekt/gyakorlat13 csomag/Gyakorlet13_6.java


Egyéni munka
Gyakorlat13 projekt/alapértelmezett csomag/ElemSzam.java

Az a) feladat kapcsán:
Felhasználó 0-t ad meg:
Visszacsatolás Magyarázat
Üres String
Összehasonlítás
Üres tömb is létezik Java-ban.

108
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

6 – 9’ Kód: Feladat kitűzése Frontális munka


Hallott szakmai szö- Velem párhuzamosan mindenki ön-
veg megértése
állóan dolgozik, a feladatokat élő
szóban fogalmazom meg.
Programkód írása
Projektor
Szintaktika követése
Számítógép
Precizitás, pontosság
NetBeans IDE 7.3
Java 1.5
Aktivizálás

9 – 10’ Futási eredmény: Futási eredmény anali- Magyarázat


zálása

10 – 11’ Felhasználó negatív számot ad meg: Számítógép


NegativeArraySizeException váltódik ki. NetBeans IDE 7.3

Kód: Hallott szakmai szö- Frontális munka


veg megértése

109
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

11 – 12’ Futási eredmény: Futási eredmény anali-


zálása
Magyarázat

Fogalomalkotás

12 – 15’ Az a) feladat tervezése: Megbeszélés


Algoritmikus gondol- Frontális munka
kodás Struktogramot ez után megkapják
Algoritmus tervezése
és ez alapján kódolnak

Hálózat
Visszacsatolás 1a_Struktogram_06_ora.png

Struktogram olvasása, Egyéni munka


értelmezése

Gyakorlás

110
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

15 – 20’ Az a) feladat kódja:

Egyéni munka

Programkód írása Számítógép


Szintaktika követése NetBeans IDE 7.3
Precizitás, pontosság Java 1.5

Követem munkájukat, ha szükséges


segítek

Önellenőrzés

20 – 21’ Az eddigi forráskód tesztelése: Tesztelés Egyéni munka

negatív egész számmal, 0-val és pozitív egész számmal

valós szám esetén: InputMismatchException váltódik ki.

111
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

21 – 22’

Egyéni munka

Diagnosztizálás, hiba-
keresés

22 – 23’ Az b) feladat kapcsán: Fokozatosság Frontális munka

Eddig álvéletlen számokkal foglalkoztunk:

Math osztály: Visszacsatolás Tanulói elbeszélés


Fogalomalkotás
random() metódus: [0,0; 1,0[ intervallumban álvéletlen számot ad.
Elbeszélés, közlés
De a Random osztály: Összehasonlítás

véletlenszámok előállítására szolgáló osztály


Internet
http://docs.oracle.com/javase/7/docs/api/java/util/Random.html http://docs.oracle.com/ja-

Információ gyűjtése vase/7/docs/api/java/util/Ran-


util csomagban van  importálni kell
Következtetés dom.html

112
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

23 – 25’ Random() konstruktor: készít egy új véletlenszám-generátort.

Konstruktorok:

Információ elemzése Beszélgetés

Frontális munka

A tények elemzése

Internet
http://docs.oracle.com/ja-

nextInt() metódus: A teljes int értéktartományban generál egy int típusú érté- vase/7/docs/api/java/util/Ran-
Információ gyűjtése
dom.html
ket.

nextLong() metódus: A teljes long értéktartományban generál egy long típusú


Új ismereteket meg-
értéket. alapozó tények biztosí-
tása
nextInt(int n) metódus: A [0; n[ intervallumban generál egy int típusú értéket.

nextDouble() metódus: A [0,0; 1,0] intervallumban generál egy double típusú


értéket.

nextBoolean() metódus: Generál egy logikai értéket.

113
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

Metódusok: Frontális munka

Olvasott angol nyelvű Internet


szakmai szöveg meg- http://docs.oracle.com/ja-
értése
vase/7/docs/api/java/util/Ran-
dom.html

Beszélgetés

25 – 28’ Létrehozni saját hálózati meghajtón: Állománykezelés


Gyakorlat13 projekt/alapértelmezett csomag/VeletlenSzam.java Hálózat
Random objektum létrehozása
Random osztály importálása
Frontális munka
[-6;16] 16 – (-6) = 22
Magyarázat
nextInt(23) – 6 Alkalmazás
Tábla
nextDouble() * 22 - 6

114
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

28 – 30’ Kód:

Egyéni munka

Programkód írása
Szintaktika követése
Precizitás, pontosság
Számítógép
NetBeans IDE 7.3
Java 1.5

Önellenőrzés

Futási eredmény: Egyéni munka


Diagnosztizálás Számítógép
NetBeans IDE 7.3
Java 1.5

A b) feladat struktogramja:

115
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

30 – 31’
Algoritmus alkotása Hálózat
1b_Struktogram_06_ora.png

Megbeszélés
Frontális munka

A véletlenszámokat nem kell eltárolni külön változóba, egyből értékül lehet


adni a tömb elemeinek.

31 – 32’ Ha a kódolás során elfeledkezik az importálásról.

Figyelemfelhívás NetBeans IDE 7.3

Olvasott angol nyelvű


szöveg megértése

116
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

32 – 34’ A b) feladat kódja: Programkód átalakí-


tása
Egyéni munka
Szintaktika követése
Precizitás, pontosság

34 – 35’ A c) feladat struktogramja: (feltételvizsgálatok száma!)


Visszacsatolás Hálózat
1c_Struktogram_06_ora.png
Megbeszélés
Frontális munka

35 – 38’ A c) feladat kódja: Programkód módosí-


tása
Egyéni munka

Szintaktika követése NetBeans IDE 7.3


Precizitás, pontosság

117
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

Futási eredmény:
Tesztelés NetBeans IDE 7.3

Egyéni munka

38 – 40’ Gyűjtsük össze címszavakat felsorolva, hogy miket tanultunk ma, ebben a hat Összefoglalás Frontális munka
órában

40 – 42’ 1.) Írjon programot, melyben A házi feladat kijelö- Hálózat


a) létrehoz egy valós számokból álló, a felhasználó által megadott elem- lése Gyakorlat13_6_HF.pdf
Veletlenszam_tabla.png
számú tömböt,
b) feltölti a tömb elemeit olyan két tizedesjegyre kerekített véletlenszá-
mokkal, melyek a [-50, 50] zárt intervallumba esnek, Az elkészített kód lesz az alapja a
következő órának, az itt elkészített
c) kiíratja a tömb elemeit úgy, hogy elemei egymástól a ’ ❆ ’ karakter-
kódot fogják a diákok felhasználni.
rel legyenek elválasztva, de az utolsó elem után ne legyen ’ ❆ ’ ka-
Ezt közlöm is velük.
rakter,
d) kommentezi a forráskódot úgy, hogy az tükrözze, melyik kódrészlet- Tanári közlés

ben mi történik!

118
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

A feladathoz készítsen struktogramot! Mentse Gyakorlat13_6_HF_Ve-


zeteknev_Keresztnev néven!
A forráskódot mentse Gyakorlat13_6_HF_Vezeteknev_Keresztnev néven!
A program futási eredménye a következő formában jelenjen meg:
A tömb elemei: 6.39 ❆ 3.02 ❆ 19.95 ❆ -5.93 ❆
34.58 ❆ 15.37

42 – 45’ Tanulók munkájának értékelése Értékelés Megbeszélés


Egész órát végig kíséri az értékelés.

119
TÁBLAKÉP

[-6;16] 16 – (-6) = 22

nextInt(23) [0;23[

[0;22] /-6

nextInt(23) - 6 [-6;16]

nextDouble() [0;1] /*22

nextDouble() * 22 [0;22] /-6

nextDouble() * 22 - 6 [-6;16]

120
Feladatok

1.) Írjon programot, c) kiíratja a tömböt úgy, hogy elemei egymástól a ’|’ karakterrel
a) melyben létrehoz egy egész számokból álló, a felhasználó ál- legyenek elválasztva, de az utolsó elem után ne legyen ’|’ ka-
tal megadott elemszámú tömböt, rakter!
b) feltölti a tömb elemeit olyan véletlenszámokkal, melyek a [-
6, 16] zárt intervallumba esnek,

121
Házi feladat

1.) Írjon programot, melyben Segítség a feladathoz:


a) létrehoz egy valós számokból álló, a felhasználó által meg-  Veletlenszam_tabla.png-ben is megtalálható az alábbi szem-
adott elemszámú tömböt, léltető kép a hálózaton, töltsék le, lehet, hogy a későbbiekben
b) feltölti a tömb elemeit olyan két tizedesjegyre kerekített vé- még szükség lesz rá!
letlenszámokkal, melyek a [-50, 50] zárt intervallumba es-
nek,
c) kiíratja a tömb elemeit úgy, hogy elemei egymástól a ’ ❆ ’
karakterrel legyenek elválasztva, de az utolsó elem után ne
legyen ’ ❆ ’ karakter,
d) kommentezi a forráskódot úgy, hogy az tükrözze, melyik
kódrészletben mi történik!

A feladathoz készítsen struktogramot! Mentse Gyakor-


lat13_6_HF_Vezeteknev_Keresztnev néven!
 A Heavy chevron snowflake, ❆ karakter megtalálható a 3.
A forráskódot mentse Gyakorlat13_6_HF_Vezeteknev_Kereszt-
nev néven! órán használt unicode táblában.

A program futási eredménye a következő formában jelenjen meg:  http://unicode-table.com/en/


 Két tizedesjegyre kerekítés algoritmusa (ha már elfelejtették
A tömb elemei: 6.39 ❆ 3.02 ❆ 19.95 ❆ -
volna): nézzenek utána! 
5.93 ❆ 34.58 ❆ 15.37

122
Házi feladat megoldása

Struktogram: Kód:

123
Reflexió

Az üres String és üres tömb párhuzamba állítása az óra kezdetén na- hogy ez problémát okozhat és a forráskód írása során nem szerettem
gyon hasznosnak bizonyult. Üres Stringgel már az előző órán is fog- volna, hogy gondot jelentsen. A tábláról szinte le tudták másolni az
lalkoztunk, sőt már többször előkerült, de az üres tömb még nem. En- erre vonatkozó kódrészletet és mivel még külön file-ban is lekódoltuk,
nek megtanítása most azért volt aktuális, mert a felhasználó által meg- a rögzítés, megerősítés, elmélyítés szempontjából ez nagyon hasznos
adott elemszámnál, - hiába létezik az üres tömb – nincs értelme nullát volt. A külön file-ban történő forráskód írásának emellett részemről az
megadni. Ez úgy éreztem, kellőképpen tudatosult bennük. Az összeha- volt még a célja, ha bármikor előkerül véletlenszám generálás, akkor
sonlítás pedig abban segített, hogy így már egy ismert fogalomhoz tud- szükség esetén könnyen megtalálják.
ták kötni az új ismereteket és azzal, hogy kódírás által meg is tapasz- Nagyon örültem, hogy végre adhattam házi feladatot is, amit a diákok
talhatták ennek lényegét és nemcsak elméletben beszéltünk róla, sok- mindig vasárnap éjfélig (keddenként van hat óránk) adnak be nekem.
kal jobban elraktározódott bennük. Természetesen, ha valami kérdésük van, vagy valami miatt nem fut a
A programozást, az algoritmusok tanítását nagymértékben motiválja a kódjuk, akkor is leadják, én reagálok rá, segítek nekik és ez alapján
véletlenszám generálása. Ez most is így volt és már az előző órákon is javítják. Ha nem adják le határidőre a feladatot, ha egy kicsit csúsznak,
szóba került, úgyhogy kellőképpen „fel voltak csigázva” a diákok. Már ennek még soha nem volt semmilyen következménye, mert nagyon
foglalkoztunk ezzel a témával, de csak a Math osztályon keresztül, kedvesek, ilyenkor elnézést kérnek és általában meg is indokolják a
amiről most megtudták a tanulók – nagy meglepetésükre - hogy csak késés okát, de nem fordult elő sűrűn. Egyszer volt, hogy reggel kaptam
álvéletlen számot ad. Ezek után még jobban érdekelte őket, hogy ho- házi feladatot, az órák előtt másfél órával, de megnéztem és az illető
gyan is lehet akkor véletlenszámokat előállítani. A táblaképet nagyon meglepődésére még vissza is jeleztem . A házi feladat olyan szem-
tudatosan megterveztem, mert az eddigi tapasztalataim alapján tudtam, pontból is nagyon fontos, hogy a következő óra ennek a feladatnak a

124
folytatása lesz, az itt létrehozott tömbbel fogunk tovább dolgozni. Ha A feladat alapjaiban az előző öt órában megtanult ismeretek begyakor-
valaki valamilyen oknál fogva nem készít házi feladatot, annak a teljes lását, megerősítését, rögzítését, tudatosítását, megszilárdítását, beideg-
megoldás elérhető lesz a hálózaton. ződését, rutinná válását, valamint a diákok kommunikációs, rendsze-
rező, tesztelő képességének, logikus és algoritmikus gondolkodásának
fejlesztését szolgálta.

125
ÓRATERVEZET - ALAPVETŐ ADATGYŰJTÉSI ÉS FELDOLGOZÁSI ALGORITMUSOK

A pedagógus neve: Kovács Henriette Tantárgy: Adatbázis- és szoftverfejlesztés gyakorlat

A szakmacsoport száma és megnevezése: 7. Informatika Programozási nyelv: Java

A szakképesítés azonosító száma: 54 213 05 Fejlesztői környezet: NetBeans IDE 7.3

A szakképesítés megnevezése: Szoftverfejlesztő Osztály - csoport: I/13. S - SZ2

Iskolai rendszerű szakképzés (a szakképzési évfolyamok Az óra tananyaga: Alapvető adatgyűjtési és feldolgozási algo-
száma: 2) ritmusok

Szakmai követelménymodul: 10817-12 Hálózatok, programo-


zás és adatbázis-kezelés

126
Az óra cél- és feladatrendszere – Az esztétikai készség fejlesztése: igény és készség a számítógépes
produktum esztétikus formájának kialakítására, a program helyes
A fejlesztendő attitűd, készségek, képességek, a tanítandó ismere-
strukturálására.
tek (fogalmak, szabályok stb.) és az elérendő fejlesztési szint, tu-
– Tudjon a programban karakterek unicode-jával dolgozni, érdekes
dásszint megnevezése:
karaktereket unicode-juk felhasználásával megjeleníteni
– A tanuló tartsa be a számítógépes munka szabályait, különös tekin- – Tudjon a NetBeans IDE 7.3 –ban állományokat másik projektbe,
tettel a balesetek megelőzésére. másik csomagba, más néven átmásolni.
– Felkelteni és folyamatosan ébren tartani a tanulók érdeklődését a – Tudjon tömb típusú változót deklarálni, tömböt létrehozni, feltöl-
szoftverfejlesztés iránt. Kialakítani a tanulókban az informatikai teni.
ismereteik folyamatos bővítésének és megújításának igényét. – Tudjon tömbelemeket megjeleníteni.
– Korszerű alkalmazói készség kialakítása. – Tudjon explicit konverziót alkalmazni.
– Az algoritmikus gondolkodás fejlesztése: a tanulók önálló, rend- – Tudjon algoritmust, programkódot megvalósítani, felhasználni, át-
szerezett, logikus gondolkodásának fejlesztése; a logikus gondol- alakítani, módosítani.
kodás lényeges a problémamegoldásban, és az algoritmusok elké- – Legyen képes a tömbök elemeit elérni, feldolgozni és velük műve-
szítésében, kódolásában. leteket végezni.
– A feladatmegoldáshoz megfelelő adattípus kiválasztásának fejlesz- – Legyen képes tesztelni.
tése.
Fejlesztendő készségek, képességek
– Legyen képes a NetBeans fejlesztői környezet kényelmi funkciói-
– Visszaemlékezés, esztétikai érzék, állománykezelés, alkalmazás,
nak készségszintű használatára.
megfigyelés, programkód átalakítása, módosítása, diagnosztizálás,
– Önálló munkára nevelés és felzárkóztatás.
hibakeresés, precizitás, pontosság, algoritmikus gondolkodás, al-
– Alkotó munkára nevelés.
goritmus felismerése, megértése, algoritmus tervezése, algoritmus
alkotása, struktogram készítése, programkód írása, szintaktika kö-
vetése, kreativitás, tesztelés, programkód javítása, képletalkotás,

127
típusválasztás, futási eredmény analizálása, problémamegoldás – Legyen képes a problémamegoldáshoz szükséges adatok és az
sokszínűsége, következtetés, futási eredmény átláthatósága, követ- eredmény kapcsolatának megtervezésére, értelmezésére.
hetősége, struktogram átalakítása, rögzítés, ellenőrzés, megerősí- – Adott feladat megoldásához legyen képes algoritmusokat megfo-
tés, összehasonlítás, módosítás, strukturáltság. galmazni, tervezni és megvalósítani.
– Legyen képes alkalmazást (szoftvert) tervezni, fejleszteni, futtatni,
Fejlesztendő attitűd
tesztelni és magyarázó megjegyzésekkel ellátni, előkészítve ezzel
– Legyen képes: számítógépet kezelni, szoftvereket használni.
a dokumentáció elkészítését.
– Tudja önállóan használni a hálózatot és annak alapszolgáltatásait.
– Legyen képes programozási feladatot ellátni, egy szoftvert elkészí-
– Legyen képes az adott probléma megoldásához kiválasztani az ál-
teni (kódolni), Java programnyelven implementálni.
tala ismert módszerek, eszközök és alkalmazások közül a megfe-
– Legyen képes értelmezni és javítani a NetBeans által megjelenített
lelőt.
hibaüzeneteket.
– Ismerje fel és legyen képes különféle formákban megfogalmazni a
– Legyen képes programjait úgy megírni, hogy azt később Ő maga
környezetében előforduló tevékenységek algoritmizálható részle-
is, vagy tanulótársa is fel tudja használni.
teit.
– Legyen képes alapvető adatgyűjtési és feldolgozási algoritmusokat
(összegzés, számlálás) feladatmegoldásban alkalmazni.

128
Az óra didaktikai feladatai

 Ellenőrzés  Figyelem felkeltése


 Motiválás  Aktivizálás
 Ráhangolódás  Ismétlés
 Aktivizálás  Ellenőrzés
 Összehasonlítás  Előzetes ismeretek felidézése
 Összefüggések keresése  Megerősítés
 Feladat kitűzése  Rendszerezés
 Rögzítés  Értékelés
 Figyelemfelhívás

Tantárgyi kapcsolatok: Adatbázis- és szoftverfejlesztés elmélet, Matematika, Angol, Hálózati ismeretek I., Informatikai alapismeretek

129
Felhasznált források (tankönyv, munkafüzet, feladat- és szöveggyűjtemény, digitális tananyag, online források, szakirodalom stb.):

Szerző(k) Cím Kiadó ISBN kód

Vég Csaba – dr. Juhász István Java – start! Logos 2000 963 03 9005 1

Vég Csaba Instant Java/Java EE/SOA I-II Logos 2000 978-963-06-2601-9


978-963-06-2602-6

Dirk Louis – Peter Müller: Java 5 Belépés a programozás világába Panem 963 545 454 6
Benkő Tiborné, Tóth Bertalan Együtt könnyebb a programozás Java Computerbooks 963 618 337 6

Rogers Cadenhead Tanuljuk meg a Java programozási nyelvet Kiskapu Kft. 963 9637 07 6
24 óra alatt
Angster Erzsébet Objektumorientált tervezés és programozás 4KÖR Bt. 963 00 6262 3
Java 1 - 2 963 00 6263 1
Peter J. DePasquale Java zsebkönyv Kiskapu Kft. 963 9637 10 6
Nyékyné Gaizler Judit, Frohner Java 2 útikalauz programozóknak ELTE TTK Hallgatói Alapít- 963 463 305 6
Ákos, Kozsik Tamás (Szerkesztők) vány

Kathy Sierra, Bert Bates Agyhullám: Java Kiskapu Kft. 978 963 9637 79 5

http://docs.oracle.com/javase/7/docs/api/

Dátum: éééé. hh. nn.

130
NEVELÉSI-OKTATÁSI STRATÉGIA
MÓDSZEREK
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK TANULÓI MUNKAFORMÁK
ESZKÖZÖK
MEGJEGYZÉSEK
0 – 5’ Tanulók üdvözlése  Házi feladat ellenőrzése már elekt-
A házi feladat kódját szókártyákra vágtam, összekevertem. A szókártyákat a ronikusan megtörtént, a hibák ki
Ellenőrzés
megfelelő sorrendbe kell rakniuk, vagy a számozás alapján a helyes sorrendet Motiválás vannak javítva, de hogy lássam, va-
Visszaemlékezés lóban tudják-e az eddigieket egy
fel kell állítaniuk. (organikus okok)
gyors ellenőrzési módszert válasz-
Gépek bekapcsolása.
tottam.
Házi feladat megnyitása, a benne előforduló karakterről, (Heavy chevron
snowflake - Vastag ék alakú rangjelzés hópihe) néhány érdekes momentum: Szókártyák

A karakter és a rendfokozat (Főtörzszászlós) jelzése közötti azonosság. Egyéni munka


Ráhangolódás
Számítógép
Aktivizálás
Tanári elbeszélés, bemutatás
„A részletekben rejlik a lényeg.”
Esztétikai érzék
Frontális munka
http://hu.wikipedia.org/wiki/Rendfokozat#mediavi-
Hálózat
ewer/F%C3%A1jl:Rank%20Army%20Hungary%20OR-09.svg Összehasonlítás
Internet
Összefüggések kere-
http://hu.wikipedia.org/wiki/Rendfokozat# sése
http://unicode-table.com/en/

131
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

5 – 7’ A Gyakorlat13_6_HF_Vezeteknev_Keresztnev file másolása ugyanezen pro-


jekt gyakorlat13 csomagjába Gyakorlat13_7 néven! Magyarázat
Jobb klikk a file nevén/Refactor/Copy… és a megjelenő párbeszédablak kitöl- Szemléltetés

tése:
Irányított, önálló munka

Állománykezelés
Tanári bemutatás
Alkalmazás
Megfigyelés
Projektor
Számítógép
NetBeans IDE 7.3

7 – 8’ Feladat: 1. Változtassa meg a kódot! A tömb legyen int elemtípusú, a neve le- Programkód átalakí- Egyéni munka
gyen iv, elemszáma legyen n. tása, módosítása

További szükséges változtatások:

8 – 10’ Visszajelzések a fejlesztői környezettől:

132
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

Egyrészt: Egyéni munka

ha nem megy 
Diagnosztizálás, hiba-
keresés
Megbeszélés
new double[n] 

new int[n] Irányított, önálló munka


Programkód átalakí-
Másrészt: nem kell kerekíteni tása, módosítása

Projektor
Számítógép
NetBeans IDE 7.3

Math.rint((generator.nextDouble() * 100 - 50) * 100)


/ 100 

generator.nextInt(101) - 50;

Feladat sorszámát jelző kommentek javítása. Precizitás, pontosság Egyéni munka

133
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

10 – 11’ Feladat: 2. Határozza meg a tömb elemeinek Feladat kitűzése Tanári közlés
a) összegét, Algoritmus felisme- Projektor
rése, megértése
b) átlagát! Hálózat

11 – 15’ Összeg: Algoritmikus gondol- Beszélgetés


Struktogram tervezése, létrehozása: kodás Magyarázat
Kreativitás

Irányított önálló munka


Algoritmus tervezése
Számítógép
Algoritmus alkotása
Structorizer
Microsoft Office Excel 2007,
2010
Struktogram készítése

15 – 17’ Kód elkészítése:

Programkód írása Számítógép


Precizitás, pontosság NetBeans IDE 7.3
Szintaktika követése Java 1.5
Diagnosztizálás Egyéni munka

134
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

Futási eredmény: Tesztelés Egyéni munka


Hibakeresés NetBeans IDE 7.3
Programkód javítása, Számítógép
módosítása
Projektor
Esztétikai érzék fej-
lesztése

17 – 19’ Átlag: Képletalkotás Megbeszélés

átlag = elemek összege / elemek száma Frontális munka

Az átlag valós szám! Rögzítés


Figyelemfelhívás Java 1.5
Kód írása
NetBeans IDE 7.3
Számítógép
Típusválasztás
Projektor
Programkód írása

Futási eredmény:
Egyéni munka
Futási eredmény anali-
zálása
Diagnosztizálás
Önellenőrzés

135
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

19 – 23’ Nem jó! Egész osztás eredménye kerül a double típusú változóba! Valós osz- Figyelem felkeltése Irányított, önálló munka
tást kell alkalmazni!  Típuskényszerítés: Explicit, bővítő konverzió Aktivizálás Megbeszélés
Ismétlés
Kód javítása: Következtetés
Java 1.5
NetBeans IDE 7.3
Alkalmazás Számítógép
Programkód javítása Projektor
Futási eredmény: Mivel érdemes tesztelni?

Tesztelés

Feladatkitűzés
Beszélgetés
Esztétikai érzék fej-
lesztése Egyéni munka

Kód átalakítása, hogy az átlag két tizedesjegy pontossággal jelenjen meg!

Kódírási lehetőségek: Programkód átalakí-


tása

vagy:

136
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

Problémamegoldás Megbeszélés
sokszínűsége
Frontális munka

Futási eredmény: Futási eredmény átlát-


hatósága, követhető- NetBeans IDE 7.3
sége Egyéni munka
Ellenőrzés

23 – 24’ Feladat: 2. Határozza meg a tömb elemeinek

c) négyzetösszegét, módosítsa az összegnél készített struktogramot, Struktogram átalakí- Egyéni munka


tása
mentse Gyakorlat13_7_2c néven!

Struktogram: Java 1.5


Állománykezelés NetBeans IDE 7.3
Számítógép

Projektor
Ellenőrzés

137
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

24 – 25’ Kód másolása, átalakítása: Programkód átalakí- Egyéni munka


tása
Java 1.5
Alkalmazás
NetBeans IDE 7.3
Számítógép
Rögzítés
Megerősítés

Futási eredmény. Önellenőrzés

Ellenőrzés

Projektor

25 – 26’ Feladat: 3. Határozza meg az iv tömb elemeinek szorzatát, készítsen hozzá Megbeszélés
struktogramot, melyet mentsen Gyakorlat13_7_3 néven! Magyarázat

Miben különbözik az összeg és a szorzat meghatározása? Összehasonlítás


Az előző struktogram és kód felhasználása Frontális munka

Kezdeti érték beállítása!


Módosítás
Szükséges változtatások

138
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

26 – 28’ Struktogram másolása, módosítása: Állománykezelés Egyéni munka


Java 1.5
NetBeans IDE 7.3
Struktogram átalakí-
Számítógép
tása

28 – 30’ Kód másolása, átalakítása: Folyamatosan követem munkáju-


kat, igény szerint segítek.
Programkód átalakí-
tása

Futási eredmény: Önellenőrzés 


Hibajavítás

30 – 31’ Feladat: 4. Írjon programot,


a) melyben létrehoz egy logikai értékekből álló, szintén n elemszámú bv Feladatkitűzés Megbeszélés
nevű tömböt, Előzetes ismeretek fel- Frontális munka
idézése
b) feltölti a tömb elemeit véletlen logikai értékekkel, Alkalmazás Projektor

c) kiíratja a tömb elemeit tetszőleges elválasztó karakterrel,

139
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

27 – 31’ Kód írása:

Programkód írása Egyéni munka


Szintaktika követése Számítógép
Precizitás, pontosság NetBeans IDE 7.3
Strukturáltság Java 1.5

Futási eredmény: Alkotó képesség


Önellenőrzés
Esztétikai érzék

31 – 32’ Feladat: Algoritmikus gondol-


d) meghatározza a true és false értékek darabszámát! kodás
Tanulói elbeszélés
Algoritmus felisme-
Ehhez a feladatrészhez készítsen algoritmust! rése, megértése Beszélgetés
Algoritmus alkotása Frontális munka

140
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

32 – 37’ Struktogram elkészítése:

Algoritmus megvalósí- Frontális munka


tása
Struktogram készítése
Structorizer
Microsoft Office Excel 2007,
2010

37 – 41’ Kód írása:

Programkód készítése
Szintaktika követése
Egyéni munka

Strukturáltság
NetBeans IDE 7.3
Esztétikai érzék
Java 1.5

141
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

41 – 42’ Futási eredmény Önellenőrzés  NetBeans IDE 7.3


Hibajavítás Egyéni munka

42 – 44’ Új algoritmusok: Ismétlés Megbeszélés


Sorozatszámítás Rögzítés Frontális munka
Megerősítés
Megszámolás
Rendszerezés

44 – 45’ Értékelés Értékelés Beszélgetés, elbeszélés


Frontális munka

142
Feladatok

1. A Gyakorlat13_6_HF_Vezeteknev_Keresztnev file-t másolja 3. Határozza meg az iv tömb elemeinek szorzatát,


ugyanezen projekt gyakorlat13 csomagjába Gyakorlat13_7 né- készítsen hozzá struktogramot, melyet mentsen Gyakorlat13_7_3
ven! néven!
Változtassa meg a kódot! A tömb legyen int elemtípusú, a neve
4. Írjon programot,
legyen iv, elemszáma legyen n.
a) melyben létrehoz egy logikai értékekből álló, szintén n elem-
2. Határozza meg az iv tömb elemeinek
számú bv nevű tömböt,
a) összegét, b) feltölti a tömb elemeit véletlen logikai értékekkel,
készítsen hozzá struktogramot, melyet mentsen Gyakor- c) kiíratja a tömb elemeit tetszőleges elválasztó karakterrel,
lat13_7_2a néven, d) meghatározza a true és false értékek darabszámát,
b) átlagát, ehhez a feladatrészhez készítsen algoritmus, melyet mentsen
c) négyzetösszegét, Gyakorlat13_7_4 néven!
módosítsa az összegnél készített struktogramot, mentse Gya-
korlat13_7_2c néven!

143
Reflexió

A házi feladat ellenőrzése részemről mindig elektronikus úton történik, munkánkhoz, és az első feladatban leírt átalakításokat végrehajtva dol-
meghatározott időre adják be a feladatokat a diákok, amiket ha kell goztunk tovább. Ezáltal fejlesztettem többek között a diákok logikus
többszörös levélváltás után javítanak. A feladat kapcsán ismét előke- és algoritmikus gondolkodását, a precizitást, a pontosságot, a szintak-
rült a unicode-tábla, mely alkalmas volt annak megláttatására, hogy az tika követését, a diagnosztizálást, a hibakeresést, az önellenőrzést.
apró részletekben is milyen mély dolgok rejlenek, hogy milyen össze- Az új ismereteket a gyakorlásba úgy építettem be, hogy tulajdonkép-
függések fedezhetők fel még látszólag teljesen különböző objektumok pen szinte észre sem vették a diákok, hogy most már a gyakorlatban is
között is. Ki gondolná, hogy egy karakter és egy rendfokozat jelzése alkalmaztak két programozási tételt, a sorozatszámítást (már Stringek-
között is találunk kapcsolatot. Ezek után a diákok már kellőképpen kel kapcsolatban is előkerült) és a megszámolást, ezáltal így tömb ele-
motiváltak voltak és kezdhettük a feladatokat. meivel különböző műveleteket tudtak végezni, mint például össze-
A programozás tanítása során nagyon fontosnak tartom már megírt adást, szorzást és hatványozást. Az óra végi összefoglalásban mindezt
kódrészletek ismételt felhasználását, alkalmazását, annak szükség ese- tudatosítottam, azáltal, hogy nevén neveztem a dolgokat, így látták a
tén megfelelő átalakítását, módosítását, javítását. Tulajdonképpen, párhuzamot az elmélet és a gyakorlat között. Meg is jegyezték, hogy
amikor beépített metódusokat használunk, felülírunk, munkánk alapja elméletben mindez sokkal bonyolultabbnak tűnt.
egy már megírt kód, tehát használjuk, amit már megírtak. Mindig arra Az utolsó feladat nagyon jó választásnak bizonyult, a logikai értékek-
ösztönzöm diákjaimat, hogy ami már elkészült azt ne akarjuk még egy- ből álló tömb egy kicsit feldobta azt a tényt, hogy nagyrészt csak szám
szer megvalósítani (ha tüzet akarunk gyújtani, gyufát keressünk és ne típusú tömbökkel dolgoztunk és mellesleg tökéletesen alkalmas volt a
követ ). Ez a szemlélet az egész órát végig kísérte, tulajdonképpen a megszámolás algoritmusának elsajátítására.
kezdetektől fogva, amikor még a házi feladatot is felhasználtuk további

144
Nagyon sok feladat megoldására sor került, nem voltam benne biztos, Az órán megvalósítottam azokat a dolgokat, amiket célul tűztem ki
hogy lesz idő a negyedik feladat megvalósítására. Ebben az esetben az magam elé.
a), b), c) feladatok forráskódját a hálózatról töltötték volna le, a kódot
elemeztük volna és a d) feladat megoldására került volna „csak” sor.

145
ÓRATERVEZET - MAXIMUMKIVÁLASZTÁS. TÖMBÖK ELEMEIN VÉGZETT MŰVELETEK.

A pedagógus neve: Kovács Henriette Tantárgy: Adatbázis- és szoftverfejlesztés gyakorlat

A szakmacsoport száma és megnevezése: 7. Informatika Programozási nyelv: Java

A szakképesítés azonosító száma: 54 213 05 Fejlesztői környezet: NetBeans IDE 7.3

A szakképesítés megnevezése: Szoftverfejlesztő Osztály - csoport: I/13. S - SZ2

Iskolai rendszerű szakképzés (a szakképzési évfolyamok Az óra tananyaga: Maximumkiválasztás. Tömbök elemein vég-
száma: 2) zett műveletek.

Szakmai követelménymodul: 10817-12 Hálózatok, programo-


zás és adatbázis-kezelés

146
Az óra cél- és feladatrendszere – Tudjon tömb típusú változót deklarálni, létrehozni, feltölteni.
– Tudjon tömböt megjeleníteni.
A fejlesztendő attitűd, készségek, képességek, a tanítandó ismere-
– Legyen képes algoritmust átalakítani, módosítani, javítani.
tek (fogalmak, szabályok stb.) és az elérendő fejlesztési szint, tu-
– Legyen képes forráskódot átalakítani, módosítani, javítani.
dásszint megnevezése:
– Legyen képes algoritmizálni.
– A tanuló tartsa be a számítógépes munka szabályait, különös tekin- – Legyen képes a tömbök elemeit elérni, feldolgozni és velük műve-
tettel a balesetek megelőzésére. leteket végezni.
– Felkelteni és folyamatosan ébren tartani a tanulók érdeklődését a – Tudjon tömb elemei közül maximumot kiválasztani.
szoftverfejlesztés iránt. – Tudjon algoritmust, programkódot megvalósítani, felhasználni,
– Korszerű alkalmazói készség kialakítása. átalakítani, módosítani.
– Az algoritmikus gondolkodás fejlesztése: a tanulók önálló, rend- – Legyen képes tesztelni.
szerezett, logikus gondolkodásának fejlesztése; a logikus gondol-
kodás lényeges a problémamegoldásban, és az algoritmusok elké-
Fejlesztendő készségek, képességek
szítésében, kódolásában.
– Algoritmikus gondolkodás, algoritmus felismerése, algoritmus
– Legyen képes a NetBeans fejlesztői környezet kényelmi funkciói-
megértése, algoritmizálás, algoritmus elemzése, algoritmus alko-
nak készségszintű használatára.
tása, visszaemlékezés, struktogram készítése, önellenőrzés, algo-
– Önálló munkára nevelés és felzárkóztatás.
ritmus megvalósítása, programkód átalakítása, módosítása, javí-
– Alkotó munkára nevelés: a végeredmény egy új termék, egy prog-
tása, tesztelés, programkód írása, logikus gondolkodás, probléma-
ram lesz.
megoldás, algoritmus módosítása, átalakítása, elemzés, fokozatos-
– Az esztétikai készség fejlesztése: igény és készség a számítógépes
ság, összehasonlítás, precizitás, pontosság, összefüggések
produktum esztétikus formájának kialakítására, a program helyes
strukturálására.

147
felismerése, algoritmus végrehajtása, alkotó képesség, szintaktika – Adott feladat megoldásához legyen képes algoritmusokat megfo-
követése, önállóság. galmazni, tervezni és megvalósítani.
– Legyen képes alkalmazást (szoftvert) tervezni, fejleszteni, futtatni,
Fejlesztendő attitűd
tesztelni és magyarázó megjegyzésekkel ellátni, előkészítve ezzel
– Legyen képes: számítógépet kezelni, szoftvereket használni.
a dokumentáció elkészítését.
– Tudja önállóan használni a hálózatot és annak alapszolgáltatásait.
– Legyen képes programozási feladatot ellátni, egy szoftvert elkészí-
– Legyen képes az adott probléma megoldásához kiválasztani az ál-
teni (kódolni), Java programnyelven implementálni.
tala ismert módszerek, eszközök és alkalmazások közül a megfe-
– Legyen képes értelmezni és javítani a NetBeans által megjelenített
lelőt.
hibaüzeneteket.
– Ismerje fel és legyen képes különféle formákban megfogalmazni a
– Legyen képes programjait úgy megírni, hogy azt később Ő maga
környezetében előforduló tevékenységek algoritmizálható részle-
is, vagy tanulótársa is fel tudja használni.
teit.
– Legyen képes alapvető adatgyűjtési és feldolgozási algoritmuso-
kat (összegzés, számlálás) feladatmegoldásban alkalmazni.

148
Az óra didaktikai feladatai

 Motiválás  A folyamat elemzése


 A figyelem felkeltése  Következtetés
 Ismétlés  Absztrakció
 Feladat kitűzése  Általánosítás
 Aktivizálás  Rögzítés
 A tanulók informálása a tanulási célról  Ellenőrzés
 Szemléletesség  Értékelés
 Az új ismeretet megalapozó tények biztosítása  Visszacsatolás

Tantárgyi kapcsolatok: Adatbázis- és szoftverfejlesztés elmélet, Matematika, Angol, Hálózati ismeretek I., Informatikai alapismeretek, Biológia

149
Felhasznált források (tankönyv, munkafüzet, feladat- és szöveggyűjtemény, digitális tananyag, online források, szakirodalom stb.):

Szerző(k) Cím Kiadó ISBN kód

Vég Csaba – dr. Juhász István Java – start! Logos 2000 963 03 9005 1

Vég Csaba Instant Java/Java EE/SOA I-II Logos 2000 978-963-06-2601-9


978-963-06-2602-6

Dirk Louis – Peter Müller: Java 5 Belépés a programozás világába Panem 963 545 454 6
Benkő Tiborné, Tóth Bertalan Együtt könnyebb a programozás Java Computerbooks 963 618 337 6

Rogers Cadenhead Tanuljuk meg a Java programozási nyelvet Kiskapu Kft. 963 9637 07 6
24 óra alatt
Angster Erzsébet Objektumorientált tervezés és programozás 4KÖR Bt. 963 00 6262 3
Java 1 - 2 963 00 6263 1
Peter J. DePasquale Java zsebkönyv Kiskapu Kft. 963 9637 10 6
Nyékyné Gaizler Judit, Frohner Java 2 útikalauz programozóknak ELTE TTK Hallgatói Alapít- 963 463 305 6
Ákos, Kozsik Tamás (Szerkesztők) vány

Kathy Sierra, Bert Bates Agyhullám: Java Kiskapu Kft. 978 963 9637 79 5

http://docs.oracle.com/javase/7/docs/api/

Dátum: éééé. hh. nn.

150
NEVELÉSI-OKTATÁSI STRATÉGIA
MÓDSZEREK
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK TANULÓI MUNKAFORMÁK
ESZKÖZÖK
MEGJEGYZÉSEK
0 – 4’ Egészséges táplálkozás – legjobb, legegészségesebb áru megvételére törekvés
A mai órán mi is a maximális megtalálására törekszünk, megkeressük, hol van Motiválás, Elbeszélés
egy tömb legnagyobb eleme és melyik az! a figyelem felkeltése,. Megbeszélés
Az előző órán algoritmusokat alkottunk: kiszámoltuk a tömbelemek
összegét, négyzetösszegét,
átlagát, Ismétlés

szorzatát,
Frontális munka
illetve megszámláltunk adott tulajdonságú elemeket.
Vegyünk egy 5 elemű tömböt a következő elemekkel:
5, 3, 9, 1, 7 Feladat kitűzése

Milyen algoritmust tudnánk kitalálni, hogy meg tudjuk valósítani célunkat?


Kövesse figyelemmel a következő képek sorozatát, melyek szemléltetik az al-
goritmus lényegét!
Aktivizálás
Próbálja megfogalmazni a képek alapján az algoritmust!

151
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

4 – 10’

A tanulók informálása Frontális munka


a tanulási célról
Projektor

Szemléletesség Szemléltetés

Van egy ötelemű tömbünk.


Tanári bemutatás

Az új ismeretet meg- Tanári, tanulói elbeszélés


alapozó tények biztosí-
Tegyük fel, hogy a 0. elem a leg- tása
nagyobb, azaz az 5, így a
0 lesz a maximumhely, az A folyamat elemzése
5 pedig a maximumérték.

152
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

Algoritmikus gondol- Frontális munka


Az 1. elemet összehasonlítjuk az kodás
Szemléltetés
aktuális maximummal, azaz a 0.
Projektor
elemmel. Ha nagyobb, akkor ő
lesz az aktuális maximum, ha
nem, megyünk tovább.

Algoritmus felisme- Magyarázat


rése
A következő, azaz a 2. elemet ösz-
szehasonlítjuk az aktuális maxi-
mummal, azaz a 0. elemmel. Mi-
vel nagyobb nála,

Algoritmus megértése Megbeszélés

ezért a 2. elem lesz az aktuális


maximum. Tehát most a
maximumhely a 2, a
maximumérték a 9.

153
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

Algoritmizálás Frontális munka


A következő, azaz a 3. elemet
összehasonlítjuk az aktuális ma- Szemléltetés
ximummal, azaz a 2. elemmel. Projektor
Nem nagyobb nála.

Algoritmus elemzése Tanulói elbeszélés

A következő, azaz a 4. indexű Ha úgy ítélem meg, hogy van rá


elemet összehasonlítjuk az aktu- idő: mi történne, ha nem <, hanem

ális maximummal, azaz a 2. ≤ relációjel szerepelne.

elemmel. Nem nagyobb nála.

szükség esetén
Algoritmus alkotása
Tanári elbeszélés
Végig értünk a tömbön, nincs
Magyarázat
Következtetés
több eleme, tehát a 2. indexű
eleme a legnagyobb, azaz a 9.

154
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

10 – 12’ Fogalmazza meg az algoritmust konkrét adatok nélkül! Absztrakció Tanulói elbeszélés
szükség esetén

Általánosítás Tanári elbeszélés

12 – 17’ Struktogram :

Visszaemlékezés Structorizer
Struktogram készítése Microsoft Office Excel 2007,
2010

Rögzítés
Irányított, önálló munka

Önellenőrzés
Ellenőrzés Projektor

17 – 18’ Feladat: Feladat kitűzése


1. a) Készítsen alkalmazást, amely [1; 20] zárt intervallumban lévő véletlen- Hálózat
számmal feltölt egy 10 elemű, egész elemtípusú, iv nevű tömböt! A kó- Projektor
dolás során a length mezőt használja!

Mely kódrészletünket tudnánk felhaszmálni? Visszaemlékezés Megbeszélés


Gyakorlat13_7-ből a 2. feladatig a kódrészlet átmásolása

155
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

18 – 22’ Javítások:
Scanner objektum törlése Algoritmus felisme- Megbeszélés
hátultesztelő ciklus törlése rése
Fontos a sorrend!
Algoritmus alkotása
tömb létrehozásánál n  10
n átnevezése (CTRL+R)  iv. length 
feleslegessé vált deklaráló sor törlése Algoritmizálás

véletlenszám javítása  nextInt(20) + 1

A kódrészlet:

Algoritmus megvalósí- Irányított, önálló munka


tása

Projektor
Programkód átalakí-
tása,
módosítása,
javítása

156
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

A helyes kódrészlet:

Programkód írása

Importálást ne töröljük, ha a to-


vábbi kódrészletek során nincs rá
szükség, azt úgyis jelzi a fejlesztői
környezet.

(szükségünk lesz rá )
Önellenőrzés
Egyéni munka

Projektor
Ellenőrzés

Számítógép
NetBeans IDE 7.3
Java 1.5

Tesztelés

A programkód futtatása

157
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

22 – 26’ Feladat: Feladat kitűzése Frontális munka


b) Adja meg, hogy a tömbben hányadik helyen fordul először elő a tömb Projektor
legnagyobb eleme és ez mennyi! Hálózat
Visszaemlékezés
A feladat tulajdonképpen az elkészített algoritmus megvalósítása, kódolása.. Visszacsatolás

Kód elkészítése: Algoritmus megvalósí- Számítógép


tása NetBeans IDE 7.3
Java 1.5

Programkód írása

Futási eredmény: Önellenőrzés Projektor

Ellenőrzés

A tanulók munkájának elemzése Értékelés

158
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

26 – 30’ Feladat: Feladatkitűzés

2. a) Töltsön fel 2 azonos méretű tömböt egész számokkal (a tömb méretét


beolvasással határozza meg; a feltöltés automatikusan, véletlenszámok-
kal történjen). Írassa ki az első, majd a második tömb elemeit tabulátor-
ral elválasztva!

Mely kódrészletünket tudnánk felhaszmálni? Visszaemlékezés Projektor


Gyakorlat13_6.java file-ban található kódot. Visszacsatolás

Gyakorlat13_6-hoz tartozó struktogram (Gyakorlat13_6.xlsx) megnyitása. Gyakorlat13_6.xlsx


Összefüggések felis-
A szükséges változtatások megbeszélése: merése

a ciklusban a kiíratás megváltoztatása


tömb neve tomb  tomb1 Algoritmizálás Megbeszélés
tomb2 létrehozása (KIEGÉSZÍTÉS) Logikus gondolkodás Frontális munka
Problémamegoldás
véletlenszám-generálás javítása
tomb2 tömb feltöltése véletlenszámmal (KIEGÉSZÍTÉS) Gyakorlat13_8_2.xlsx
kiíratás javítása  tabulátor Algoritmus módosí- Hálózat
tása, átalakítása
tomb2 elemeinek kiíratása (KIEGÉSZÍTÉS)
Gyakorlat13_8_2.xlsx tartalmazza az új struktogramot, melyet a hálózatra is
felteszek, ahonnan a diákok letöltve a kódolást ez alapján végzik.

159
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

Gyakorlat13_6.xlsx A szükséges változtatá- Gyakorlat13_8_2.xlsx Hálózat


Gyakorlat13_8_2.xlsx
Struktogram sok megbeszélése Megváltoztatott strukto-
gram Elemzés
Fokozatosság
Összehasonlítás
Szemléltetés

Szemléletesség
Megbeszélés
Projektor
Frontális munka

30  34 Kód elkészítése: Algoritmus megvalósí- Számítógép


tása NetBeans IDE 7.3
A beírt kommentek, megjegyzések módosítása
Java 1.5

Precizitás, pontosság

160
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

Algoritmus végrehaj-
tása
Gyakorlat13_6.java

Alkotó képesség

Számítógép
Programkód módosí- NetBeans IDE 7.3
tása, átalakítása,
javítása, írása Java 1.5
Szintaktika követése

Önállóság

Egyéni munka
Aktivizálás

Gyakorlás
Megerősítés
Ellenőrzés

161
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

34 – 35’ Az eddigi kódrészlet futtatása Futási eredmény elem- Egyéni munka


zése

35 – 38’ Feladat: Feladatkitűzés Projektor

b) Számítsa és írassa ki a 2 tömb skaláris szorzatát! (A skaláris szorzat a


megfelelő számpárok szorzatának összege.) Hálózat

Struktogram elkészítése: Figyelemfelhívás Frontális munka

Valőban szorzatot kell számolnunk? Megbeszélés

Visszaemlékezés
Egyéni munka

Algoritmikus gondol-
kodás
Structorizer
Algoritmus alkotása
Microsoft Office Excel 2007,
2010

Struktogram készítése

Ellenőrzés

38 – 42’ Kód elkészítése:

162
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

Algoritmus megvalósí-
tása
Programkód írása
Egyéni munka

Önellenőrzés
Ellenőrzés

Futási eredmény: Számítógép


NetBeans IDE 7.3
Futási eredmény elem-
zése Java 1.5

42 – 44’ Maximumkiválasztás lényege Rögzítés Beszélgetés


Megerősítés
Ha van idő: minimumkiválsztás miben különbözik ettől?

163
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

44 – 45’ Tanulók munkájának minősítése Értékelés Megbeszélés

164
Feladatok

1. a) Készítsen alkalmazást, amely [1; 20] zárt intervallumban lévő 2. a) Töltsön fel 2 azonos méretű tömböt egész számokkal (a tömb
véletlenszámmal feltölt egy 10 elemű, egész elemtípusú, iv nevű méretét beolvasással határozza meg; a feltöltés automatikusan,
tömböt! A kódolás során a length mezőt használja! véletlenszámokkal történjen). Írassa ki az első, majd a második
tömb elemeit tabulátorral elválasztva!
b) Adja meg, hogy a tömbben hányadik helyen fordul először elő
a tömb legnagyobb eleme és ez mennyi! b) Számítsa és írassa ki a 2 tömb skaláris szorzatát! (A skaláris
szorzat a megfelelő számpárok szorzatának összege.)

165
Reflexió

Aki kezébe veszi az óravázlatomat, meglepődhet azon, hogy hogyan végrehajtása, az algoritmus alkotása, az algoritmus megvalósítása, az
kerül ide az egészséges táplálkozás, mi köze van a maximumkiválasz- algoritmus módosítása, átalakítása, az algoritmus tervezése.
táshoz. Ehhez tudni kell, hogy nagyon sokat beszélgetek a diákokkal A maximumkiválasztás algoritmusára nem jöttek rá, nem tudták meg-
az egészséges életmódról, annak élettani hatásairól és bár annak elle- közelíteni a problémát, de a szemléletesség, mint didaktikai feladat be-
nére, hogy kerekesszékhez kötöttek (1 kivételével), sportolnak, de ná- vetése most igazán célszerű volt, mert teljesen akadálymentesen tud-
luk különösen fontos, hogy mit visznek be szervezetükbe, hogy az el- tam haladni a diasorokon és a végén az általánosítás, az absztrakt gon-
hízást elkerüljék, mert ugye amit beviszünk, azzá válunk. A cél tehát a dolkodás sem ütközött akadályokba. A feladat algoritmusának leírása,
legegészségesebb, legjobb kiválasztása – ami manapság elég nehéz a struktogram készítése ennek ellenére egy kicsit nehézkesen ment, a
feladat a tartósítószerek térhódítása miatt – vagyis törekszünk, mint kódolás viszont, az algoritmus megvalósítása nem okozott problémát.
mindenben a maximalizmus elvére. Így tehát a tömbelemek közül is
A második feladatban nagy hangsúlyt fektettem elkészített struktogra-
szeretnénk kiválasztani a maximumot. Ezzel a kis bevezetővel kellő-
mok és megírt kódrészletek felhasználására. Ezáltal lehetőség nyílt
képpen ráhangoltam a diákokat az óra anyagára, tudtam, erről mindig
újabb algoritmizálásra (hiszen a forráskódban nem mindegy, hogy mi-
szívesen beszélgetnek velem.
lyen sorrendben hajtjuk végre a módosításokat), a logikus gondolkodás
Az óra az algoritmikus gondolkodás kompetencia szintjeit képező, va- fejlesztésére, forráskód átalakítására, módosítására. Utolsó lépésként
lamennyi összetevőt fejleszti. Ezek: az algoritmus megértése, azaz pedig azt gondoltam, hogy a sorozatszámítás gondot fog jelenteni, mi-
megérteni, hogy mit kell tenni és megérteni, hogy miért azt kell tenni, vel két tömbön kellett dolgozniuk, de ez nem okozott problémát; vi-
az algoritmus felismerése, az algoritmus elemzése, az algoritmus szont nem összeadásban, hanem szorzásban gondolkoztak volna a ska-
láris szorzat elnevezés miatt, ekkor felhívtam figyelmüket a zárójelbe

166
tett magyarázó szövegre, melyből egyből kiderült számukra, hogy mit Az órát sikeresnek ítélem meg, mert a reflexiókban felsoroltakon kívül
is kell tenniük. Tudatosítottam bennük, hogy mindig legyenek precí- még számos, a terv elején felsorolt készségeket és képességeket is fej-
zek, pontosak és a zárójelben lévő, látszólag nem lényeges gondolatok lesztettem.
is jelentősek lehetnek.

167
ÓRATERVEZET - ÖSSZETETT ELEMTÍPUSÚ TÖMBÖK. TÖMBELEMEK CSERÉJE.

A pedagógus neve: Kovács Henriette Tantárgy: Adatbázis- és szoftverfejlesztés gyakorlat

A szakmacsoport száma és megnevezése: 7. Informatika Programozási nyelv: Java

A szakképesítés azonosító száma: 54 213 05 Fejlesztői környezet: NetBeans IDE 7.3

A szakképesítés megnevezése: Szoftverfejlesztő Osztály - csoport: I/13. S - SZ2

Iskolai rendszerű szakképzés (a szakképzési évfolyamok Az óra tananyaga: Összetett elemtípusú tömbök. Tömbelemek
száma: 2) cseréje.

Szakmai követelménymodul: 10817-12 Hálózatok, programo-


zás és adatbázis-kezelés

168
Az óra cél- és feladatrendszere – Az esztétikai készség fejlesztése: igény és készség a számítógépes
produktum esztétikus formájának kialakítására, a program helyes
A fejlesztendő attitűd, készségek, képességek, a tanítandó ismere-
strukturálására.
tek (fogalmak, szabályok stb.) és az elérendő fejlesztési szint, tu-
– Tudjon a szakirodalmak között tájékozódni.
dásszint megnevezése:
– Tudjon algoritmust alkotni.
– A tanuló tartsa be a számítógépes munka szabályait, különös tekin- – Tudjon algoritmust magvalósítani.
tettel a balesetek megelőzésére. – Tudjon megfelelő adatszerkezetet és adattípust választani.
– Felkelteni és folyamatosan ébren tartani a tanulók érdeklődését a – Tudjon a NetBeans IDE-ben osztályt létrehozni, állományt átne-
szoftverfejlesztés iránt. Kialakítani a tanulókban az informatikai vezve másolni.
ismereteik folyamatos bővítésének és megújításának igényét. – Tudjon tömböt létrehozni, billentyűzetről feltölteni, kiíratni.
– Az algoritmikus gondolkodás fejlesztése: a tanulók önálló, rend- – Tudja egyszerű és összetett elemtípusú tömb alapértelmezett érté-
szerezett, logikus gondolkodásának fejlesztése; a logikus gondol- keit meghatározni.
kodás lényeges a problémamegoldásban, és az algoritmusok elké- – Tudjon a Java hivatalos dokumentációjában keresni.
szítésében, kódolásában. – Tudjon Internetről információt gyűjteni.
– A feladatmegoldáshoz megfelelő adattípus kiválasztásának fejlesz- – Tudjon Scanner objektumot úgy létrehozni, hogy a magyar ’ő’ és
tése. ’ű’ karakterek is megjeleníthetők legyenek.
– Legyen képes a NetBeans fejlesztői környezet kényelmi funkciói- – Tudjon programkódot módosítani, futtatni, a futási eredményt ele-
nak készségszintű használatára. mezni.
– Önálló munkára nevelés és felzárkóztatás. – Tudjon tömbelemeket cserélni.
– Alkotó munkára nevelés: a végeredmény egy új termék, egy prog- – Tudja, hogy összetett típus értékadásakor, a referencia állítódik át.
ram lesz. – Ismerje a RuntimeException futási hibát.
– Tudja tömb referenciájának alapértelmezett értékét meghatározni.

169
Fejlesztendő készségek, képességek – Legyen képes elemi és összetett adatok megkülönböztetésére, ke-
– Algoritmizálás, algoritmikus gondolkodás, algoritmus felismerése, zelésére, használatára.
algoritmus alkotása, adatszerkezet-választás, típusválasztás, állo- – Legyen képes a problémamegoldáshoz szükséges adatok és az
mánykezelés, programkód írása, visszaemlékezés, precizitás, pon- eredmény kapcsolatának megtervezésére, értelmezésére.
tosság, futtatás, absztrakt gondolkodás, megfigyelés, kódrészlet – Adott feladat megoldásához legyen képes algoritmusokat megfo-
írása, olvasott szakmai szöveg megértése, programkód átalakítása, galmazni, tervezni és megvalósítani.
önállóság, logikus gondolkodás, visszaemlékezés, algoritmus – Legyen képes alkalmazást (szoftvert) tervezni, fejleszteni, futtatni,
megvalósítása, programkód átalakítása, önellenőrzés, futási hiba tesztelni és magyarázó megjegyzésekkel ellátni, előkészítve ezzel
felismerése, diagnosztizálás, hibakeresés, fejlesztői környezet jel- a dokumentáció elkészítését.
zésének figyelembevétele, futási eredmény elemzése. – Legyen képes programozási feladatot ellátni, egy szoftvert elkészí-
teni (kódolni), Java programnyelven implementálni.
Fejlesztendő attitűd
– Legyen képes értelmezni és javítani a NetBeans által megjelenített
– Legyen képes: számítógépet kezelni, szoftvereket használni.
hibaüzeneteket.
– Tudja önállóan használni a hálózatot és annak alapszolgáltatásait.
– Legyen képes programjait úgy megírni, hogy azt később Ő maga
Tudjon adatokat megkeresni, elérni a hálózati szolgáltatások alkal-
is, vagy tanulótársa is fel tudja használni.
mazásával.
– Legyen képes eligazodni és tudjon keresni a Java hivatalos doku-
– Ismerje fel és legyen képes különféle formákban megfogalmazni a
mentációjában.
környezetében előforduló tevékenységek algoritmizálható részle-
teit.

170
Az óra didaktikai feladatai

 Motiválás  Problémafelvetés
 A figyelem felkeltése  Új ismereteket megalapozó tények biztosítása
 Szemléletesség  Futási eredmény elemzése
 Figyelemfelhívás  Megvalósítás
 Szakirodalom megismertetése  Következtetés
 Tudományosság  Visszacsatolás
 Feladat kitűzése  Megerősítés
 Ismétlés  Rögzítés
 A szükséges előzetes ismeretek felidézése  Aktivizálás
 A tanulók informálása a tanulási célról  Ellenőrzés
 Absztrakció, általánosítás  Rendszerezés
 Új ismeret közlése  Értékelés
 Fokozatosság  Futási eredmény átláthatósága, követhetősége
 Információ gyűjtése, elemzése

Tantárgyi kapcsolatok: Adatbázis- és szoftverfejlesztés elmélet, Matematika, Angol, Hálózati ismeretek I., Informatikai alapismeretek, Könyv-
tárismeret, Magyar

171
Felhasznált források (tankönyv, munkafüzet, feladat- és szöveggyűjtemény, digitális tananyag, online források, szakirodalom stb.):

Szerző(k) Cím Kiadó ISBN kód

Vég Csaba – dr. Juhász István Java – start! Logos 2000 963 03 9005 1

Vég Csaba Instant Java/Java EE/SOA I-II Logos 2000 978-963-06-2601-9


978-963-06-2602-6

Dirk Louis – Peter Müller: Java 5 Belépés a programozás világába Panem 963 545 454 6
Benkő Tiborné, Tóth Bertalan Együtt könnyebb a programozás Java Computerbooks 963 618 337 6

Rogers Cadenhead Tanuljuk meg a Java programozási nyelvet Kiskapu Kft. 963 9637 07 6
24 óra alatt
Angster Erzsébet Objektumorientált tervezés és programozás 4KÖR Bt. 963 00 6262 3
Java 1 - 2 963 00 6263 1
Peter J. DePasquale Java zsebkönyv Kiskapu Kft. 963 9637 10 6
Nyékyné Gaizler Judit, Frohner Java 2 útikalauz programozóknak ELTE TTK Hallgatói Alapít- 963 463 305 6
Ákos, Kozsik Tamás (Szerkesztők) vány

Kathy Sierra, Bert Bates Agyhullám: Java Kiskapu Kft. 978 963 9637 79 5

http://docs.oracle.com/javase/7/docs/api/

http://hu.wikipedia.org/wiki/ISO/IEC_8859-2

Dátum: éééé. hh. nn.

172
NEVELÉSI-OKTATÁSI STRATÉGIA
MÓDSZEREK
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK TANULÓI MUNKAFORMÁK
ESZKÖZÖK
MEGJEGYZÉSEK
0 – 3’ Szoktak-e olvasni? Beszélgetés

Milyen könyveket? Frontális munka

Valamilyen szempont szerint rendezve vannak a könyveik a könyvespolcon? Elbeszélés


Motiválás
A figyelem felkeltése
Nekem igen, külön vannak a szakkönyvek, és azon belül egymás mellett a
Java, illetve a matek könyvek. A múltkor az egyik matek könyvet nem talál-
tam, mert takarítás során rossz helyre, a Java könyvekhez lett betéve. Fogtam
és kicseréltem őket. Megbeszélés
Mondjuk el azon lépéseket, hogyan cseréltem ki a két könyvet!
Algoritmizálás
Az órára a következő Java könyveket és egy matematikával kapcsolatos köny- Elbeszélés
vet viszek be, ebbe a sorrendbe elhelyezve: Szemléletesség Könyvek
Angster Erzsébet: Objektumorientált tervezés és programozás Java 1 - 2 Figyelemfelhívás Szemléltetés
Szakirodalom megis-
Benkő Tiborné, Tóth Bertalan: Együtt könnyebb a programozás Java mertetése
Tudományosság
Obádovics J. Gyula: Matematika
Dirk Louis – Peter Müller: Java 5 Belépés a programozás világába

173
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

3 – 4' Nyékyné Gaizler Judit, Frohner Ákos, Kozsik Tamás (Szerkesztők): Java 2 Algoritmikus gondol- Frontális munka
útikalauz programozóknak kodás
Algoritmus felisme-
Cserélés lépései, az algoritmus (közben végrehajtom amit mondanak): rése Tanulói elbeszélés
Algoritmus alkotása
- Megfogom a matek könyvet és leteszem az asztalra. Könyvek
Algoritmizálás
- Java könyvet beteszem a matek könyv helyére, (ami jelen pillanatban az Szemléltetés
asztalon van).
Szemléletesség
- Az asztalról beteszem a matek könyvet a már levett Java könyv helyére.

4 – 5’ Feladat: Készítse el a feladat programját, azaz a program cseréljen ki két Feladat kitűzése Elbeszélés
könyvet! Frontális munka
Mibe tároljuk a könyveket? Adatszerkezet-válasz-
Válasz: tömbbe tároljuk a könyveket tás
Típusválasztás
Milyen típusú elemei lesznek a tömbnek? Megbeszélés
Válasz: String típusú elemei lesznek a tömbnek
Hány elemű lesz a tömb?
Válasz: 5 elemű lesz a tömb.
Milyen nevet adna a file-nak?

174
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

5 – 6’ Hozzon létre a Gyakorlat13 projekt alapértelmezett csomagjába egy Elem- Állománykezelés Egyéni munka
Csere nevű osztályt és abban egy 5 elemű String tömböt! Számítógép
Tömb létrehozása: NetBeans IDE 7.3
Programkód írása
Java 1.5
String[] konyv = new String[5];

6 – 8’ Az újonnan létrehozott tömb elemei alapértelmezés szerinti értékeket vesznek Visszaemlékezés Megbeszélés
fel. Egyszerű típusú változók esetén ezeket megtapasztaltuk. Ismétlés Frontális munka
A szükséges előzetes
primitív típusú változók esetén: 0, 0.0, \u0000, false ismeretek felidézése
Hogyan tudjuk megnézni, hogy összetett elemtípusú tömb elemeinek mik az Számítógép
alapértelmezett értékei? NetBeans IDE 7.3
Motiválás
Java 1.5
Ki kell íratni a tömböt. A tanulók informálása
a tanulási célról Projektor
Egyéni munka

Programkód írása
Precizitás, pontosság
Futtatás
Futási eredmény:

Szemléletesség

A memóriafoglalás:

175
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

8 – 9’ Szemléltetés
Tanári bemutatás
Figyelem felkeltése
Magyarázat

Absztrakt gondolkodás
Frontális munka

Absztrakció, általáno-
sítás Tábla

Az alapértelmezett értékek:
Új ismeret közlése
referenciák esetén: null

9 – 10’ Töltsük fel a tömböt! Bevitt könyvek alapján történik Megfigyelés Szemléltetés
Tanári bemutatás

Fokozatosság
Frontális munka

Tábla

176
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

10 – 13’ A tömb elemeit a felhasználótól kérje be!


Kód elkészítése: Számítógép
NetBeans IDE 7.3
Megvalósítás
Java 1.5
Projektor

Kódrészlet írása Egyéni munka

13 – 15’ Ékezetes karakterek beolvasásánál gond van. Problémafelvetés Irányított, önálló munka
Hogyan tudnánk megoldani a problémát?
A segítség a Java dokumentációja:
http://docs.oracle.com/javase/7/docs/api/ Információ gyűjtése,
elemzése
Számítógép
Internet

177
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

The encoding type used to convert bytes from the stream into characters to be Olvasott szakmai szö- Irányított, önálló munka
scanned. veg megértése

Vagyis: A kódolás típusát használjuk a beolvasott karakterek konvertálására. Megbeszélés


15 – 17’
Mi lesz vajon a kódolás típusa?

Nézzünk utána pontosan!


Számítógép
http://hu.wikipedia.org/wiki/ISO/IEC_8859-2
Új ismereteket meg- Internet
ISO-8859-2 az ISO/IEC 8859-es karakterkódolási szabvány második része alapozó tények biztosí-
tása
Az ISO által kettes számú latin ábécének nevezett 191 karakter mindegyiké-
nek egybájtos (nyolcbites) kódját adja meg. A 191 karakter között minden
magyar ékezetes betű megtalálható (a sok más készletből hiányzó ő és ű is).
Megvalósítás Egyéni munka
Egészítsük ki a kódot: Programkód átalakí-
tása

17 – 18’

Futási eredmény elem-


zése
Futtatás: Következtetés

most már nincs probléma a „Benkő”-vel sem.

178
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

18 – 20’ Számítógép
NetBeans IDE 7.3
Önállóság
Java 1.5
Projektor

20 – 22’ A végén szeretném látni a könyvek sorrendjét a csere előtt és a csere után is, Feladatkitűzés Megbeszélés
ezt hogy érem el?

Válasz: Kiíratom a könyvek sorrendjét a csere előtt is és a csere után is. Logikus gondolkodás

Kódrészlet:

Egyéni munka
Precizitás, pontosság

22 – 23’ És most jön végre maga a csere.  Visszacsatolás Frontális munka


Visszaemlékezés Tanulói elbeszélés
- Megfogom a matek könyvet és leteszem az asztalra.
- Java könyvet beteszem a matek könyv helyére, (ami jelen pillanatban az
asztalon van). Megerősítés

- Az asztalról beteszem a matek könyvet a már kivett Java könyv helyére.

179
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

23 – 24’ A kódolással párhuzamosan kövessük azt is, hogy „körülbelül” mi is történik


a memóriában: Szemléletesség Frontális munka

Tábla

Ismétlés Megbeszélés
Rögzítés
Megerősítés
Az előző ismereteinkből tudjuk, hogy Javaban: összetett típus értékadásakor a
referencia állítódik át.

24 – 25’ Megfogom a matek könyvet és leteszem az asztalra. Frontális munka


String asztal = konyv[2]; Algoritmikus gondol-
kodás
Tábla

Absztrakt gondolkodás
Elbeszélés
Magyarázat

180
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

25 – 27’ Java könyvet beteszem a matek könyv helyére. Frontális munka


konyv[2] = konyv[4]; Fokozatosság

Tábla
Logikus gondolkodás

Megbeszélés
Magyarázat
Megfigyelés

27 – 28’ Az asztalról beteszem a matek könyvet a már kivett Java könyv helyére

konyv[4] = asztal; Frontális munka

Tudományosság
Tábla

Aktivizálás

Tanulói elbeszélés

181
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

28 – 30’ Kódrészlet elkészítése (a kommentekről ugye nem feledkeznek meg!):

Figyelemfelhívás

Számítógép
Algoritmus megvalósí- NetBeans IDE 7.3
tása Java 1.5
Kód elkészítése - csere utáni kiíratás: Projektor
Programkód írása

Programkód átalakí- Egyéni munka


tása

30 – 31’ Futtatás: NetBeans IDE 7.3


Futási eredmény elem-
zése
Egyéni munka

Az 1. feladat kódja :

182
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

32 – 33’

Szemléltetés

Önellenőrzés Projektor

Ellenőrzés

Rendszerezés Elbeszélés
Rögzítés
Megerősítés

Frontális munka
Értékelés

183
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

33 – 34’ Futási eredmény:

Megbeszélés

Precizitás, pontosság
Szemléltetés

Projektor

Futási eredmény átlát-


hatósága, követhető- Frontális munka
sége

34 – 35’ Feladat: Feladat kitűzése

2. a) Győződjön meg róla, hogy mely objektumra mutatnak a cserében részt Projektor
vevő tömbelemek és az asztal referencia (a cserénél bevezetett segédvál- Fokozatosság
tozó)! Hálózat

b) Állítsa az asztal referenciát null-ra, írassa ki, nézze meg, mi történik!

c) Deklaráljon egy fotel nevű változót, mely egy String objektumra képes
mutatni, írassa ki, nézze meg, mi történik!

184
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

35 – 38’ Kód:

Megerősítés Irányított, önálló munka


Projektor
Számítógép
Ismétlés
NetBeans IDE 7.3
Új ismeretet megala-
Java 1.5
pozó tények biztosí-
tása Megbeszélés

38 – 39’ Futási eredmény: Futási eredmény elem- Frontális munka


zése

Megbeszélés
Olvasott szakmai szö- Magyarázat
veg megértése
Projektor
Számítógép
De, ha az utolsó utasítás nincs kikommentezve:
NetBeans IDE 7.3
Java 1.5
Futási hiba felismerése

RuntimeException: futási hiba keletkezik, a fotel változó nem lett inicializálva

185
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

39 – 40’ Feladat: Feladat kitűzése

d) Deklaráljon egy butor nevű változót, mely egy olyan tömb objektumra Projektor
képes mutatni, melynek elemei String-ek, írassa ki, nézze meg, mi törté- Hálózat

nik!

String[] butor;
Programkód írása
Számítógép
System.out.println(butor);
NetBeans IDE 7.3
Futás: Diagnosztizálás, hiba- Java 1.5
keresés

Frontális munka

Fejlesztői környezet
jelzésének figyelembe
vétele
Megbeszélés

Futási eredmény elem-


zése

186
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

40 – 41’ Tehát tömböknél is ugyanaz történik, mint az előbb a fotel változónál: Általánosítás Megbeszélés
RuntimeException: futási hiba keletkezik, a butor nevű változó nem lett inici- Projektor
alizálva – erre a fejlesztői környezet is felhívja a figyelmünket, ezért mindig NetBeans IDE

figyeljük a NetBeans IDE jelzéseit. Frontális munka

41 – 42’ A tömb referenciájának alapértelmezés szerinti értéke Következtetés, abszt- Elbeszélés


rakció
lokális deklaráció esetén: definiálatlan
Új ismeret közlése

42 – 44’ Ismétlés: Rögzítés Beszélgetés


Megerősítés
Tömbelemek cseréje

44 – 45’ Tanulók munkájának minősítése Értékelés Megbeszélés

187
TÁBLAKÉP I.

188
TÁBLAKÉP II.

189
TÁBLAKÉP III.

Tömbelemek cseréje

String asztal = konyv[2];

konyv[2] = konyv[4];

konyv[4] = asztal;

190
Feladatok

1. a) Írjon programot, mely egy könyvespolcon a harmadik és ötödik b) Állítsa az asztal referenciát null-ra, írassa ki, nézze meg, mi tör-
helyen lévő két könyvet kicseréli! A könyvespolcon 5 db könyv ténik!
legyen, az egyes könyveket kérje be a felhasználótól (a könyve- c) Deklaráljon egy fotel nevű változót, mely egy String objektumra
ket ne egyszerű típusú változókkal azonosítsa)! képes mutatni, írassa ki, nézze meg, mi történik!
b) Írassa ki a könyvespolcon lévő könyveket úgy, hogy látható le- d) Deklaráljon egy butor nevű változót, mely egy olyan tömb ob-
gyen a csere! jektumra képes mutatni, melynek elemei String-ek, írassa ki,
2. a) Győződjön meg róla, hogy mely objektumra mutatnak a cseré- nézze meg, mi történik!
ben részt vevő tömbelemek és az asztal referencia (a cserénél
bevezetett segédváltozó)!

191
Reflexió

Az óra egyik fő célja a tömbelemek cseréjének megvalósítása volt. Ezt, és a továbbiakban a tömb elemeinek feltöltését, a tömbelemek cse-
Ezen ismeretanyag motiválására sikerült egy olyan hétköznapi, való- réjének minden egyes lépését a szemléltetés módszerével a táblán tet-
ságos példát kitalálnom, mely egyben realizálta másik célomat is, még- tem érthetővé, mely tapasztalataim alapján határozottan alkalmas arra,
pedig azt, hogy a diákok összetett elemtípusú tömböket használjanak. hogy megtudják és megértsék: az objektumok „maradnak”, csak a re-
Sőt, tovább megyek, nem én közöltem velük, hogy tömböt kell létre- ferencia állítódik át. A táblára általam felrajzolt ábrák mindegyike és
hozniuk, és azt sem, hogy milyen típusú elemekkel töltsék fel, így hoz- természetesen a kódok is a hálózaton számukra elérhetők. Ezt minden
zájárultam ahhoz, hogy fejlesszem azon képességeiket, miszerint tud- egyes csoportomnál alkalmazom, de itt különösen fontos, tekintettel a
janak megfelelő adatszerkezetet és adattípust választani. A példa ezen csoport összetételére.
túl kiváló alkalmat teremtett a tárgyban megjelent szakirodalom ismer- A kellő előkészítésnek köszönhetően két tanuló önállóan, egy tanuló
tetésére, bemutatására, és a könyvek bevitelével valóság közelivé tet- egy kis segítséggel lekódolta az algoritmust.
tem a problémát és szó szerint el tudtuk „játszani” az algoritmust,
Valószínű, hogy emiatt volt idő a második feladatra (nem voltam biz-
konkrétan megvalósítottuk a cserét.
tos, hogy ez belefér az órába, de azt az elvet vallom, hogy a van-tól
Az algoritmikus gondolkodás fejlesztésének egyik legnehezebb kom- nem kell félni, tehát inkább több feladat legyen a tarsolyomban, mint-
ponense az algoritmus felismerése és az algoritmus alkotása. Ez az ese- hogy ott álljak üres zsebbel ), melyből kiderült számukra, hogy
tek többségében eddig akadályokba ütközött, de ez a hétköznapi példa tömb referenciájának alapértelmezés szerinti értéke lokális deklaráció
megtörte a jeget és képesek voltak az algoritmus megalkotására.  esetén definiálatlan.
Az eddigiek során egy létrehozott tömb elemeinek értékadás előtti ki- Az óra a legjobb példája annak, hogy a megfelelően motivált diák sok
íratásával tapasztalták meg, hogy mik az egyszerű elemtípusú tömb mindenre képes.
elemeinek alapértelmezett értékei. Most ugyanezt tettük az összetett
elemtípusú tömbbel és megtudták, hogy ebben az esetben az alapértel-
mezett érték a null referencia.

192
ÓRATERVEZET - TÖMB ELEMEINEK MEGFORDÍTÁSA. GYAKORLÁS.

A pedagógus neve: Kovács Henriette Tantárgy: Adatbázis- és szoftverfejlesztés gyakorlat

A szakmacsoport száma és megnevezése: 7. Informatika Programozási nyelv: Java

A szakképesítés azonosító száma: 54 213 05 Fejlesztői környezet: NetBeans IDE 7.3

A szakképesítés megnevezése: Szoftverfejlesztő Osztály - csoport: I/13. S - SZ2

Iskolai rendszerű szakképzés (a szakképzési évfolyamok Az óra tananyaga: Tömb elemeinek megfordítása. Gyakorlás.
száma: 2)

Szakmai követelménymodul: 10817-12 Hálózatok, programo-


zás és adatbázis-kezelés

193
Az óra cél- és feladatrendszere – Az esztétikai készség fejlesztése: igény és készség a számítógépes
produktum esztétikus formájának kialakítására, a program helyes
A fejlesztendő attitűd, készségek, képességek, a tanítandó ismere-
strukturálására.
tek (fogalmak, szabályok stb.) és az elérendő fejlesztési szint, tu-
– Tudjon tömb típusú változót deklarálni, létrehozni, feltölteni.
dásszint megnevezése:
– Tudjon tömböt megjeleníteni.
– A tanuló tartsa be a számítógépes munka szabályait, különös tekin- – Legyen képes a tömbök elemeit elérni, feldolgozni és velük műve-
tettel a balesetek megelőzésére. leteket végezni.
– Felkelteni és folyamatosan ébren tartani a tanulók érdeklődését a – Tudjon tömböt létrehozni inicializáló blokk segítségével.
szoftverfejlesztés iránt. – Legyen képes a tömbök elemeit absztrakt módon elérni.
– Korszerű alkalmazói készség kialakítása. – Tudjon tömbelemeket cserélni.
– Az algoritmikus gondolkodás fejlesztése: a tanulók önálló, rend-
Fejlesztendő készségek, képességek
szerezett, logikus gondolkodásának fejlesztése; a logikus gondol-
– Visszaemlékezés, algoritmikus gondolkodás, logikus gondolko-
kodás lényeges a problémamegoldásban, és az algoritmusok elké-
dás, absztrakt gondolkodás, problémamegoldás, szabályalkotás,
szítésében, kódolásában.
becslés, képletalkotás, algoritmus megvalósítása, struktogram el-
– A feladatmegoldáshoz megfelelő adattípus kiválasztásának fejlesz-
készítése, precizitás, pontosság, az absztrakciók, általánosítások
tése.
felhasználása, önellenőrzés, kód elkészítése, kommentek haszná-
– Legyen képes a NetBeans fejlesztői környezet kényelmi funkciói-
lata, szintaktika követése, futási eredmény elemzése, követhető-
nak készségszintű használatára.
sége, átláthatósága.
– Önálló munkára nevelés és felzárkóztatás.
– Alkotó munkára nevelés: a végeredmény egy új termék, egy prog- Fejlesztendő attitűd
ram lesz. – Legyen képes: számítógépet kezelni, szoftvereket használni.
– Tudja önállóan használni a hálózatot és annak alapszolgáltatásait.

194
– Legyen képes az adott probléma megoldásához kiválasztani az ál- – Legyen képes alkalmazást (szoftvert) tervezni, fejleszteni, futtatni,
tala ismert módszerek, eszközök és alkalmazások közül a megfe- tesztelni és magyarázó megjegyzésekkel ellátni, előkészítve ezzel
lelőt. a dokumentáció elkészítését.
– Ismerje fel és legyen képes különféle formákban megfogalmazni a – Legyen képes programozási feladatot ellátni, egy szoftvert elkészí-
környezetében előforduló tevékenységek algoritmizálható részle- teni (kódolni), Java programnyelven implementálni.
teit. – Legyen képes értelmezni és javítani a NetBeans által megjelenített
– Legyen képes a problémamegoldáshoz szükséges adatok és az hibaüzeneteket.
eredmény kapcsolatának megtervezésére, értelmezésére. – Legyen képes programjait úgy megírni, hogy azt később Ő maga
– Adott feladat megoldásához legyen képes algoritmusokat megfo- is, vagy tanulótársa is fel tudja használni.
galmazni, tervezni és megvalósítani.

195
Az óra didaktikai feladatai

 Ismétlés  Összegzés
 Megerősítés  Általánosítás
 Motiváció  A tények elemzése, összefüggések feltárása
 A figyelem felkeltése  Visszacsatolás
 Feladat kitűzése  Összehasonlítás
 Aktivizálás  Ellenőrzés
 Fokozatosság  Értékelés
 Szemléletesség  Figyelemfelhívás
 Következtetés

Tantárgyi kapcsolatok: Adatbázis- és szoftverfejlesztés elmélet, Matematika, Angol, Hálózati ismeretek I., Informatikai alapismeretek, Testne-
velés

196
Felhasznált források (tankönyv, munkafüzet, feladat- és szöveggyűjtemény, digitális tananyag, online források, szakirodalom stb.):

Szerző(k) Cím Kiadó ISBN kód

Vég Csaba – dr. Juhász István Java – start! Logos 2000 963 03 9005 1

Vég Csaba Instant Java/Java EE/SOA I-II Logos 2000 978-963-06-2601-9


978-963-06-2602-6

Dirk Louis – Peter Müller: Java 5 Belépés a programozás világába Panem 963 545 454 6
Benkő Tiborné, Tóth Bertalan Együtt könnyebb a programozás Java Computerbooks 963 618 337 6

Rogers Cadenhead Tanuljuk meg a Java programozási nyelvet Kiskapu Kft. 963 9637 07 6
24 óra alatt
Angster Erzsébet Objektumorientált tervezés és programozás 4KÖR Bt. 963 00 6262 3
Java 1 - 2 963 00 6263 1
Peter J. DePasquale Java zsebkönyv Kiskapu Kft. 963 9637 10 6
Nyékyné Gaizler Judit, Frohner Java 2 útikalauz programozóknak ELTE TTK Hallgatói Alapít- 963 463 305 6
Ákos, Kozsik Tamás (Szerkesztők) vány

Kathy Sierra, Bert Bates Agyhullám: Java Kiskapu Kft. 978 963 9637 79 5

http://docs.oracle.com/javase/7/docs/api/

Dátum: éééé. hh. nn.

197
NEVELÉSI-OKTATÁSI STRATÉGIA
MÓDSZEREK
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK TANULÓI MUNKAFORMÁK
ESZKÖZÖK
MEGJEGYZÉSEK
0 – 4’ Ismétlés: Ismétlés Megbeszélés
Tömb deklarálása, létrehozása, elemeinek alapértelmezett értékei. Megerősítés
Visszaemlékezés
Tömb elemeinek megjelenítése.
Frontális munka
Tömbelemek cseréje.
A mai órán ezzel kapcsolatosan egy nagyon érdekes feladatot valósítunk meg. Motiváció
A figyelem felkeltése
Tegnap, ahogy a tornaterem előtt elmentem, nyitva volt az ajtó és láttam, hogy
pont akkor tornasorban sorakoztak a gyerekek. Eszembe jutott, hogy amikor én
jártam iskolába az egyik barátnőm volt a legkisebb és mindig a tornasor végén
állt. Soha nem értette, miért nem lehetne legalább egyszer fordítva állni. Vált-
suk valóra álmát!
Hálózat
Feladat: Feladat kitűzése Projektor
1. Egy csoport 7 diákját állítsa fordított tornasorba! A diákokat milyen jel-
lemzőjükkel azonosítaná? Jelenítse meg a változást!
Gondoljuk át, hogyan tudnánk megvalósítani a feladatot! Logikus gondolkodás

198
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

4 – 6’ Milyen adatszerkezettel valósítjuk meg a feladatot? Aktivizálás Vita


Válasz: tömb adatszerkezettel valósítjuk meg. Absztrakt gondolkodás Megbeszélés
Fokozatosság Frontális munka
Milyen tulajdonságukkal azonosítjuk a diákokat? magasság – cm
Melyik módszerrel hozzuk létre a tömböt? inicializáló blokkal.
Milyen típusú elemekből áll? egész

6 – 11’ Hogyan tudom megfordítani a tornasort? Problémamegoldás Szemléltetés


Szemléletesség Vita
Logikus gondolkodás
Algoritmikus gondol-
kodás Magyarázat
Absztrakt gondolkodás
Szabályalkotás
Frontális munka
Tábla
Hálózat

Mit gondolnak, melyik az én adatom a tömbben? Becslés Szerepjáték


Egy cserét két tanuló eljátszik. Következtetés
Összegzés
Tehát a tömb i. és (h – i - 1). indexű elemeit kell kicserélni.
Általánosítás
Mely elemek ezek? tornaSor[i] és tornaSor[h – i – 1]

199
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

11 – 13’ Hány cserét kell végezni? Mindegy, hogy páratlan vagy páros elemszámú a Szemléltetés
tömb? Fokozatosság

Vita
A tények elemzése,
összefüggések feltá-
rása Frontális munka
Magyarázat

Szemléletesség

Visszacsatolás Tábla
Hálózat

Következtetés

Képletalkotás

Páratlan elemszámú tömb esetén (tömb hossza / 2) cserét kell végezni.

200
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

13 – 15’ Frontális munka


Aktivizálás

Összehasonlítás Előző ábra projektorral kivetítve,

ez az előzőt módosítva, a

Tábla
Fokozatosság

Frontális munka

Megbeszélés
Magyarázat

Következtetés
Képletalkotás

Páros elemszámú tömb esetén (tömb hossza / 2) cserét kell végezni. Összegzés
Páratlan és páros elemszámú tömb esetén is (tömb hossza / 2) cserét kell vé-
gezni.

201
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

15 – 28’ Struktogram elkészítése: Algoritmikus gondol-


kodás
Önálló munka
nehézségek esetén
Algoritmus megvalósí-
tása Irányított, önálló munka
Struktogram elkészí-
(A struktogramban a tömb létreho-
tése
zását, és az 1. kiíratást, ha úgy lá-
tom jónak készen megkapják.)
Precizitás, pontosság
Számítógép
Structorizer
Az absztrakciók, álta- Microsoft Office Excel 2007,
lánosítások felhaszná- 2010
lása

Önellenőrzés

Ellenőrzés
Frontális munka

A hasonló vagy azonos részeket másolja és javítsa!

202
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

28 – 40’ Programkód:

Kód elkészítése
Kommentek haszná-
lata Önálló munka
Szintaktika követése

Precizitás, pontosság

Számítógép
NetBeans IDE 7.3
Java 1.5

Az absztrakciók, álta-
lánosítások felhaszná- (Ha nem tudnák befejezni a kódo-
lása lást, akkor vasárnapi határidővel
házi feladatnak feladom.)

Önellenőrzés

Megbeszélés
Projektor
Ellenőrzés Frontális munka

203
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET AZ ÓRA MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

40 – 41’ Futási eredmény: Projektor


Futási eredmény elem-
zése, követhetősége,
átláthatósága Frontális munka

Ellenőrzés – közben is folyamatosan követtem munkájukat, ha szükséges se- Ellenőrzés


gítek.

41 – 43’ Értékelés Értékelés Frontális munka

43 – 45’ Tájékoztatom őket, hogy jövő héten az eddigiek számonkérése lesz és az ed- Figyelemfelhívás Tanári közlés
digi elméleti anyagról egy Tomb.pdf file-t raktam fel a hálózatra. Tomb.pdf

204
TÁBLAKÉP I.

Tömbelemek cseréje

tornaSor[i] és tornaSor[h – i – 1] elemek cseréjét kell elvégezni

205
TÁBLAKÉP II.

Cserék száma

206
TÁBLAKÉP III.

Cserék száma

207
Feladat

Egy csoport 7 diákját állítsa fordított tornasorba! A diákokat milyen A feladathoz készítsen algoritmust!
jellemzőjükkel azonosítaná? Jelenítse meg a változást! (Ha szükséges,
a lehető legáltalánosabban alkosson szabályokat!)

208
Tomb.pdf

209
210
211
212
213
214
Reflexió

Az első óra volt a téma elkezdése óta, mely tisztán gyakorló óra és új megértését, hanem a figyelem ébren tartását és ezen felül a következ-
ismeretek elsajátítására nem került sor. Ezek az órák - így ez is - igazán tetések, általánosítások, absztrakciók megkönnyítését is szolgálták.
alkalmasak az addig megtanított ismeretek rögzítése, elmélyítése, A tábla, a számítógép és a projektor elengedhetetlenek voltak és azt
megerősítése mellett a logikus gondolkodás, az algoritmikus gondol- szolgálták, hogy a diákok számára élvezetessé tegyem az órát. A lé-
kodás és az absztrakt gondolkodás fejlesztésére. Központi szerepet töl- nyeges, magyarázó, a megértést szolgáló táblai képeket elektronikusan
tött be az órán a következtetés, az absztrakció, az általánosítás, mint is elkészítettem, így a tömbelemek cseréje és a cserék számával kap-
didaktikai feladat megvalósulása, mely maga után vonta az összefüg- csolatos képek is nagymértékben hozzájárultak a szabályok, képletek,
gések felismerésének és a szabályalkotás képességének fejlesztését. összefüggések feltárásához, megértéséhez, segítették a logikus, abszt-
A bevezető elbeszélésem megfelelően motiválta a diákokat, mert egy rakt, valamint algoritmikus gondolkodás fejlesztését és mindemellett
konkrét tevékenység megvalósítása, egy tényleges cél elérése mindig lehetővé teszik - szükség esetén - az összefüggések újbóli bemutatását,
sokkal jobban felkelti érdeklődésüket és úgymond értelmét látják, elmélyítését.
mintha pusztán csak annyit mondtam volna, hogy „fordítsuk meg egy A megbeszéltek alapján a struktogram elkészítését önálló feladatnak
tömb elemeit”. A figyelem felkeltése - és ezen túl - a figyelem ébren szántam, de éreztem, hogy valószínű, hogy ez kisebb akadályokba üt-
tartása, az egyik legfontosabb feladatok közé tartozik, melyek az órán közik, ezért is tüntettem fel az óratervben és sejtésem beigazolódott. A
megvalósultak. A csoport kis létszáma és a csoportprofilban leírt okok programkód írását viszont szépen teljesítették, használva a már megírt
miatt változatos munkaformák alkalmazhatósága korlátozott, de érde- kódrészleteket, és a futási eredmény átláthatóan jelent meg a képer-
kes oktatási módszereket, mint pl. vita, játék ebbe az órába be tudtam nyőn.
vonni. Emellett nagy erőfeszítéseket tettem a szemléletesség, mint di-
Az órát eredményesnek ítélem meg, a diákok képességei fejlődtek, az
daktikai feladat megvalósítására, mely nemcsak az adott probléma
ismeretek elmélyültek.

215
FOGLALKOZÁS TERVEZETE – AZ ISMÉTLÉS - ITERÁCIÓ. CIKLUSOK FAJTÁI, ÁTALAKÍTHATÓSÁGUK, AL-
KALMAZÁSUK.

A pedagógus neve: Kovács Henriette Tantárgy: Programozási alapok

Az ágazat megnevezése - besorolása: Informatika és távközlés - 12 Programozási nyelv: Python

A szakma azonosító száma: 5 0613 12 03 Fejlesztői környezet: Visual Studio Code

A szakma megnevezése: Szoftverfejlesztő és -tesztelő Osztály: 1/13. RL

Szakmai oktatás időtartama: 2 év A foglalkozás tananyaga: Az ismétlés - iteráció. Ciklusok fajtái, át-
alakíthatóságuk, alkalmazásuk.
A szakma Európai Képesítési Keretrendszer szerinti szintje: 5

A szakma Magyar Képesítési Keretrendszer szerinti szintje: 5

Digitális Kompetencia Keretrendszer szintje: 8

216
A foglalkozás cél- és feladatrendszere – Az esztétikai készség fejlesztése: igény és készség a számítógépes
produktum esztétikus formájának kialakítására, a program helyes
A fejlesztendő attitűd, készségek, képességek, a tanítandó ismere-
strukturálására.
tek (fogalmak, szabályok stb.) és az elérendő fejlesztési szint, tu-
– Tudjon változókat azonosítani, értékadást végezni.
dásszint megnevezése:
– Tudjon kifejezéseket az aritmetikai, logikai, relációs, értékadó ope-
– A tanuló tartsa be a számítógépes munka szabályait, különös tekin- rátorok felhasználásával létrehozni.
tettel a balesetek megelőzésére. – Tudjon a print() függvénnyel, annak paraméterezésével adatokat
– Felkelteni és folyamatosan ébren tartani a tanulók érdeklődését a megjeleníteni.
programozás iránt. – Tudja használni az input() függvényt és a típuskonverziót.
– Korszerű alkalmazói készség kialakítása. – Tudja alkalmazni az escape karaktereket, megjegyzéseket.
– Az algoritmikus gondolkodás fejlesztése: a tanulók önálló, rend- – Tudjon egy- és többágú elágazásokat létrehozni és használni.
szerezett, logikus gondolkodásának fejlesztése; a logikus gondol- – Tudjon ciklusokat létrehozni, adott feladatnál célszerűen közülük
kodás lényeges a problémamegoldásban, és az algoritmusok elké- választani.
szítésében, kódolásában. – Legyen képes a végtelen ciklus felismerésére, elkerülésére.
– A feladatmegoldáshoz megfelelő adattípus kiválasztásának fejlesz- – Tudjon a range() függvény segítségével sorozatot létrehozni.
tése. – Legyen képes egy sorozat elemeit bejárni és velük műveleteket vé-
– Legyen képes a Visual Studio Code fejlesztői környezet kényelmi gezni.
funkcióinak készségszintű használatára.
Fejlesztendő készségek, képességek
– Önálló munkára nevelés és felzárkóztatás.
– Visszaemlékezés, precizitás, megfigyelés, feladatértelmezés,
– Alkotó munkára nevelés: a végeredmény egy új termék, egy prog-
absztrakt gondolkodás, logikus gondolkodás, algoritmikus gondol-
ram lesz.
kodás, problémamegoldás, programkód analizálása, írása, szintak-
tika követése, hibakeresés, tesztelés, önellenőrzés, önállóság,
együttműködő képesség, meggyőzőképesség, szakmai nyelvű

217
beszédkészség, íráskészség, mondatszerű leírás elkészítése, rend- – Legyen képes a problémamegoldáshoz szükséges adatok és az
szerező képesség. eredmény kapcsolatának megtervezésére, értelmezésére.
– Adott feladat megoldásához legyen képes algoritmusokat megfo-
Fejlesztendő attitűd
galmazni, tervezni és megvalósítani.
– Legyen képes: számítógépet kezelni, szoftvereket használni.
– Legyen képes alkalmazást (szoftvert) tervezni, fejleszteni, futtatni,
– Tudja önállóan használni a hálózatot és annak alapszolgáltatásait.
tesztelni és magyarázó megjegyzésekkel ellátni, előkészítve ezzel
– Legyen képes az adott probléma megoldásához kiválasztani az ál-
a dokumentáció elkészítését.
tala ismert módszerek, eszközök és alkalmazások közül a megfele-
– Legyen képes programozási feladatot ellátni, egy szoftvert elkészí-
lőt.
teni (kódolni), Python programnyelven implementálni.
– Ismerje fel és legyen képes különféle formákban megfogalmazni a
– Legyen képes értelmezni és javítani a Visual Studio Code által
tevékenységek algoritmizálható részleteit.
megjelenített hibaüzeneteket.
– Legyen képes adatok megkülönböztetésére, kezelésére, használa-
– Legyen képes programjait úgy megírni, hogy azt később Ő maga
tára.
is, vagy tanulótársa is fel tudja használni.

218
Az óra didaktikai feladatai

 Motiválás  Gyakorlás
 Aktivizálás  Fokozatosság
 Szemléletesség  Megerősítés
 Ismétlés  Ellenőrzés
 Visszacsatolás  Értékelés
 Új ismeret közlése  Összefoglalás
 A tények, jelenségek, folyamatok sokoldalú elemzése  Rendszerezés
 Rögzítés  A házi feladat kijelölése

Tantárgyi kapcsolatok: Matematika, Angol, Informatikai alapismeretek, Sport

219
Felhasznált források:

Szerző(k) Cím

Gérard Swinnen Tanuljunk meg programozni Python nyelven


Raphael Marvie Bevezetés a Pythonba példákkal
Full Circle magazin Programozzunk Pythonban
Takács Gábor A Python programozási nyelv - jegyzet

https://github.com/nlharri/Pythonarium/blob/master/Documentation/hu/01_introduction.md
https://infopy.eet.bme.hu/
https://www.w3schools.com/python/
https://pythonidomar.wordpress.com/python-parancsok-magyar-jelentes/
https://www.tutorialspoint.com/python/
http://alea.uw.hu/c/Progr_tetelekRendezesek.htm
https://medium.com/pythonarium/halad%C3%B3-python-els%C5%91-r%C3%A9sz-cb0a898faa2e
https://gyires.inf.unideb.hu/EFOP344/PythonHTML/conditionals.html
https://sulipython.fandom.com/hu/wiki/Ciklus?action=edit&section=1
http://slpython.blogspot.com/2016/03/05elagazasokciklusokmd.html
http://people.ubuntu.com/~kelemeng/.ufp3/native-datatypes.html

Dátum: éééé. hh. nn.

220
NEVELÉSI-OKTATÁSI STRATÉGIA
MÓDSZEREK
IDŐKERET A FOGLALKOZÁS MENETE CÉLOK ÉS FELADATOK TANULÓI MUNKAFORMÁK
ESZKÖZÖK
MEGJEGYZÉSEK
0 – 5’ Tanulók üdvözlése , névsor olvasása – kártyák kiosztásával
Házi feladatok, szorgalmi feladatok elkészítésével kapcsolatos észrevételek Ismétlés Megbeszélés
Ismétlés: Megerősítés Frontális munka
Ciklus szükségessége, létrehozása. Visszaemlékezés

Ciklus működésének elve.


Ciklus kulcsszava, a blokk lefutásának feltétele.
Szemléletesség

Struktogramok_alapok.xlsx
Esztétikai érzék

Projektor

Python_07_het_foglalko-
zas.pdf

221
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET A FOGLALKOZÁS MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

6 – 10’ Alapfeladat: Feladat kitűzése Hálózat


Olvasson be egész számokat mindaddig, amíg 0-t nem adnak meg! Ha 0-t ad- Projektor
nak, írja ki, hogy hány darab szám került beolvasásra a 0 kivételével, és vége
a feldolgozásnak! Megbeszélés
Más megfogalmazásban: Olvasson be egész számokat 0 végjelig, majd írja ki Frontális munka
Motiváció
a beolvasott értékek számát! A végjel nem eleme a sorozatnak! A figyelem felkeltése Játék
A feladat eljátszása Csoportmunka
Algoritmizálás mondatszerű leírással (PowerPoint használatával):

Esztétikai érzék Ciklus0_Alapfeladat_megol-


das.pptx
COVID miatt lehet:
Logikus gondolkodás
Önálló munka
helyzettől függően lehet:

Frontális munka

222
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET A FOGLALKOZÁS MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

10 – 13’ A db változó (üres a kártyán kezdetben) hova kell, hogy kerüljön? Aktivizálás Vita
Melyik kódrészlet ismétlődik? Fokozatosság Megbeszélés
Miért van szükség arra, hogy a ciklus előtt is bekérjük a változót? Frontális munka
Válasz: A feltétel a felhasználó által megadott számot vizsgálja. Visszacsatolás
Mikor fut le a ciklus blokkja?
Válasz: Ha a ciklus feltétele igaz
Problémamegoldás
Hányszor ismétlődik a ciklusmag (sárga szín)?
Válasz: Nem tudjuk megmondani.
Struktogrammal:
Szemléletesség
Szemléltetés
Logikus gondolkodás
Algoritmikus gondol-
kodás
Struktogramok_alapok.xlsx
Absztrakt gondolkodás

Önálló munka

223
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET A FOGLALKOZÁS MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

13 – 18 Forráskód elkészítése: Kód elkészítése Önálló munka


Kiíratás és bekérés egymásba ágyazása – paraméter Ismétlés

Visual Studio Code


Kommentek használata
Szintaktika követése
Precizitás, pontosság
Önellenőrzés
Futási eredmény elem-
zése, követhetősége,
átláthatósága

18 – 20’ Keressünk egy egyszerűbb módszert adatok bekérésére, ne kelljen kétszer Problémamegoldás Számítógép
ugyanazt leírnunk. Viszal Studio Code
Python 3.
Ha a feltétel a ciklus blokkja után lenne, nem lenne szükség a ciklus előtti be-
Szemléletesség
kérésre.
Ez az ún. hátultesztelő ciklus, melynek blokkja egyszer mindenképpen lefut.
Új ismeret közlése

224
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET A FOGLALKOZÁS MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

Szemléletesség Struktogramok_alapok.xlsx

Esztétikai érzék

Algoritmizálás mondatszerű leírással

Szemléletesség Szemléltetés
Tanári bemutatás
Magyarázat

Megfigyelés
Frontális munka

Fokozatosság

225
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET A FOGLALKOZÁS MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

Struktogrammal:

Szemléletesség Szemléltetés
Tanári bemutatás
Magyarázat

Struktogramok_alapok.xlsx

20 – 23’ Pythonban nincs. Új ismeret közlése


Oldjuk meg, hogy ne használjuk a feltételben a bekért számot! – Végtelen cik-
lus Magyarázat
Visszacsatolás
Megbeszélés

Ismétlés
A szükséges előzetes
ismeretek felidézése az
új ismeretek elsajátítá-
Szemléltetés
sához

226
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET A FOGLALKOZÁS MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

Struktogrammal: Alakja: Szemléletesség Magyarázat

Új ismeret közlése Struktogramok_alapok.xlsx


Absztrakció

Python_07_het_foglalko-
zas.pdf

23 – 28’ Forráskód elkészítése: Megvalósítás

Számítógép
Kódrészlet írása

Önálló munka

Hogyan tudjuk kikerülni a break-et? Fokozatosság


Visual Studio Code
Logikai változó bevezetésével.

227
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET A FOGLALKOZÁS MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

Megvalósítás Frontális munka


Programkód átalakítása

Visual Studio Code

28 – 29’ Mikor használjuk a True logikai értéket tartalmazó elöltesztelő ciklust? Rendszerezés Beszélgetés
Adott tulajdonságú adatok bekérésére nagyon hasznos. Aktivizálás
Megerősítés

29 – 30’ 1. feladat - Python_07_het_foglalkozas.pdf 21. feladata Gyakorlás Python_07_het_foglalko-


Írjon programot, ami bekér a felhasználótól egy pozitív számot! Ha a felhasz- Fokozatosság zas.pdf

náló nem a feltételnek megfelelő számot ad meg, ismételje meg a bekérést! Ha


a szám megfelelő, írja ki a képernyőre a szám 5-ös maradékát!

30 – 35’ Megfelelő típuskonverzió alkalmazása Megfelelő adattípus ki- Megbeszélés


Kód írása: választása
Önálló munka
Visszacsatolás
Visual Studio Code

Önellenőrzés

Futási eredmény, hibajavítás


Frontális munka

228
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET A FOGLALKOZÁS MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

35 - 38 Alakítsuk át úgy a kódot, hogy a felhasználónak jelezzük, ha nem megfelelő Kód átalakítása
számot adott meg!
Kód másolása, átalakítása, futási eredmény
Ellenőrzés

38 – 39’ Visual Studio Code kényelmi funkciója: Fejlesztői környezet Bemutatás


Több azonos sor egyszerre történő beírása előnye

Ctrl + Alt + Le kurzormozgató

39 – 40 2. feladat - Python_07_het_foglalkozas.pdf 27. feladata Feladat kitűzése Python_07_het_foglalko-


Generáljon le egy véletlen egész számot az [1; 12[ intervallumban, és írja ki a zas.pdf

képernyőre a számot, valamint a szám 3-as maradékát! Ezek után kérdezze


meg a felhasználót, hogy szeretne-e újabb számot! Ha igen, ismételje meg az
előzőt, ha nem, lépjen ki a programból! A felhasználó választását (i/n) egy
változóban tárolja el!

229
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET A FOGLALKOZÁS MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

40 - 43 Véletlenszámok generálása Visszacsatolás Projektor

Megerősítés Python_07_het_foglalko-
zas.pdf

Rögzítés
Frontális munka

Megbeszélés

Alkalmazás
A feladat megoldása során melyik függvényre lesz szükségünk?
Válasz: randrange()
Hány paraméterrel?
Válasz: 2

230
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET A FOGLALKOZÁS MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

43 – 50’ Kód: Programkód írása Egyéni munka


Szintaktika követése
Precizitás, pontosság
Strukturáltság

Ha szükséges:
Alkotó képesség
Frontális munka

De-Morgen azonossá-
ch != 'i' and ch != 'n' De Morgan azonosság gok alkalmazása Internet

https://hu.wikipedia.org/wiki/De_Morgan-azonoss%C3%A1gok
Önellenőrzés
Futási eredmény

50 – 54’ 3. feladat - Python_07_het_foglalkozas.pdf 2/2. feladata Python_07_het_foglalko-


Rajzoljon le egy 8 * 8-as sakktáblát csillagokból és szóközökből! zas.pdf
Algoritmikus, abszt-
rakt. logikus gondolko- SEGEDanyagok_Gyakor-
dás lat_07.xlsx
Sakk munkalap

Esztétikai érzék
Projektor

231
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET A FOGLALKOZÁS MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

54 – 60’ Kód: Programkód készítése Egyéni munka


Szintaktika követése vagy
Strukturáltság
Frontális munka

Önellenőrzés 
Hibajavítás
Futási eredmény

60 – 62’ 4. feladat - Python_07_het_foglalkozas.pdf 2/12. feladata Feladat kijelölése


Program, amely kiírja az első N Fibonacci számot. Fibonacci-számok: Az első
Python_07_het_foglalko-
két elem 0 és 1, a további elemeket az előző kettő összegeként kapjuk. zas.pdf

Képletben: Ha F0 = 0 és F1 = 1 akkor a következő elemeket úgy kapjuk, hogy


Fn = Fn-1 + Fn-2

Az első néhány Fibonacci-szám: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34

62 – 65’ Algoritmikus gondol- SEGEDanyagok_Gyakor-


kodás lat_07.xlsx
Fibonacci munkalap
Szemléltetés

232
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET A FOGLALKOZÁS MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

65 – 67’ Projektor

Megbeszélés

Algoritmus felisme-
rése, megértése SEGEDanyagok_Gyakor-
Algoritmus alkotása lat_07.xlsx
Fibonacci munkalap

67 – 69’ Számok cseréje: Visszacsatolás Frontális munka

Rögzítés

69 – 72’ Kód írása: Alkalmazás Egyéni munka

72 –74’ Néhány érdekesség: Új ismeret közlése


math modul factorial függvénye

233
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET A FOGLALKOZÁS MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

Ha marad idő, akkor bemuta-


tom, ha nem, akkor önálló fel-
dolgozásra adom ki az alábbia-
kat.

Bemutatás

74 – 76’ Törtek kezelése Új ismeret közlése Bemutatás


fractions modul Fraction osztálya

76 – 79’ Tanultak összefoglalása Összefoglalás Frontális munka


Rendszerezés

79 – 80’ Értékelés, házi feladat kiadása Értékelés Beszélgetés, elbeszélés


Frontális munka

A házi feladat kijelö-


lése

234
NEVELÉSI-OKTATÁSI STRATÉGIA
IDŐKERET A FOGLALKOZÁS MENETE CÉLOK ÉS FELADATOK
MEGJEGYZÉSEK

Tatalék feladat - Python_07_het_foglalkozas.pdf 28. feladata Feladat kitűzése Python_07_het_foglalko-


Készítsen programot, amely bekér egész számokat mindaddig, amíg nem adja zas.pdf

meg a 0-t! A program határozza meg és írja ki a beadott egész számok közül a
legkisebbet és a legnagyobbat! (A 0-t ne számítsa bele a beadott számokba, ez
csak a bevitel végét jelzi, ez az ún. végjel!) A számok beolvasását a 0 végjelig
ciklus (while True) segítségével valósítsa meg!

Feladat megoldása: Új ismeret közlése Frontális munka

Algoritmikus gondol- Egyéni munka


kodás

Programkód készítése
Szintaktika követése

235
Feladatok

0. Alapfeladat: 3. Rajzoljon le egy 8 * 8-as sakktáblát csillagokból és szóközökből!


4. Program, amely kiírja az első N Fibonacci számot. Fibonacci-szá-
Olvasson be egész számokat mindaddig, amíg 0-t nem adnak meg!
mok: Az első két elem 0 és 1, a további elemeket az előző kettő
Ha 0-t adnak, írja ki, hogy hány darab szám került beolvasásra a 0
összegeként kapjuk. Képletben: Ha F0 = 0 és F1 = 1 akkor a követ-
kivételével, és vége a feldolgozásnak!
kező elemeket úgy kapjuk, hogy Fn = Fn-1 + Fn-2
Más megfogalmazásban: Olvasson be egész számokat 0 végjelig,
Az első néhány Fibonacci-szám: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34
majd írja ki a beolvasott értékek számát! A végjel nem eleme a
sorozatnak!

1. Írjon programot, ami bekér a felhasználótól egy pozitív számot! 5. Tartalék feladat:
Ha a felhasználó nem a feltételnek megfelelő számot ad meg, is- Készítsen programot, amely bekér egész számokat mindaddig,
mételje meg a bekérést! Ha a szám megfelelő, írja ki a képernyőre amíg nem adja meg a 0-t! A program határozza meg és írja ki a
a szám 5-ös maradékát! beadott egész számok közül a legkisebbet és a legnagyobbat! (A
2. Generáljon le egy véletlen egész számot az [1; 12[ intervallumban, 0-t ne számítsa bele a beadott számokba, ez csak a bevitel végét
és írja ki a képernyőre a számot, valamint a szám 3-as maradékát! jelzi, ez az ún. végjel!) A számok beolvasását a 0 végjelig ciklus
Ezek után kérdezze meg a felhasználót, hogy szeretne-e újabb szá- (while True) segítségével valósítsa meg.
mot! Ha igen, ismételje meg az előzőt, ha nem, lépjen ki a prog-
ramból! A felhasználó választását (i/n) egy változóban tárolja el!

236
Megjegyzés

Eddig digitális munkarendben folyt az oktatás, egyetlen kontakt órám Amennyiben látom, hogy a 0. alapfeladat nem okoz nehézséget, akkor
volt az osztállyal, ha a haladás nem a terv szerint megy, akkor a kima- az algoritmizálás folyamatát lerövidítem. Pl.: elhagyható a PowerPoint
radt feladatot - a megoldás csatolásával - önálló feldolgozásra adom ki megoldása, elegendő csak a kész algoritmus kivetítése.
az osztálynak.

237

You might also like