Upload
phungliem
View
219
Download
4
Embed Size (px)
Citation preview
A projekt az Európai Unió támogatásával, az Európai Szociális Alap társfinanszírozásával valósult meg.
A TISZK rendSZer TovábbfejleSZTéSe – PeTrIK TISZKTÁMOP-2.2.3-07/1-2F-2008-0011
SzAkmAcSoportoS AlApozó gyAkorlAtok informAtikA tErülEtrE
Bevezetés a Visual c# 2008 használatába11. évfolyamtAnári kézikönyV
BEVEZETÉS A VISUAL C# 2008
HASZNÁLATÁBA
INformATIkAI gyAkorLATok
11. ÉVfoLyAm
TANÁRI KÉZIKÖNYV
SzakmacSoportoS alapozó gyakorlatok informatika területre • informatikai gyakorlatok TÁmoP-2.2.3-07/1-2f-2008-0011
A kiadvány a TÁMOP-2.2.3-07/1-2F-2008-0011 azonosító számú projekt keretében jelenik meg.
Szerző: Czigléczky Gábor
Lektor: Madarász Péter
Borító és tipográfia: Új Magyarország Fejlesztési Terv Arculati kézikönyv alapján
A mű egésze vagy annak részletei – az üzletszerű felhasználás eseteit ide nem értve – oktatási és tudományos célra korlátozás nélkül, szabadon felhasználhatók.
A tananyagfejlesztés módszertani irányítása: Observans Kft. Budapest, 2009.Igazgató: Bertalan Tamás
Tördelés: Király és Társai Kkt. • Cégvezető: Király Ildikó
PETRIK TISZK TÁMOP-2.2.3-07/1-2F-2008-0011 3
A TANANyAg ÁLTALÁNoS LEírÁSA
TANANYAG CÍME BEVEZETÉS A VISUAL C# 2008 HASZNÁLATÁBAA TANANYAG ÓRASZÁMA 28 óraÁLTALÁNOS CÉLOK Általános cél
A tananyag általános célja, hogy a kurzus elvégzése után a tanu-lók legyenek képesek használni egy korszerű alkalmazásfejlesztő eszközt (Microsoft Visual Studio Express 2008) és egy programo-zási nyelvet (C#).
Konkrét célok
1. A Visual C# 2008 kezelőfelületének és alapvető komponen-seinek megismertetése a tanulókkal.
2. Egyszerűbb Windows Forms alkalmazások fejlesztése.
3. A C# nyelvi elemeinek megismerése.
4. Hibajelenségek észlelése, elhárításuk, „bolondbiztos” prog-ramok készítése.
5. A tanult ismeretek alkalmazása egy kisebb csoportban elké-szített projektfeladaton keresztül, az együttműködés fejlesz-tése, a csoportos szoftverfejlesztés kipróbálása.
6. Az elkészült produktumok értékelése különféle szempontok szerint.
KAPCSOLÓDÁSOK Kapcsolódások az OKJ 1144-06 moduljához:165/1.2/1144-06 (Programozásmódszertan I.) –165/1.3/1144-06 (Programnyelvek (elméleti ismeretek) –165/1.4/1144-06 (Programnyelvek (gyakorlat) –165/4.2/1144-06 (A fejlesztés lépései) –165/5.1/1144-06 (A tesztelés lépései) –165/6.2/1144-06 (Alkalmazásfejlesztő eszközök) –
KIMENETI KÖVETELMÉ-NYEK
A tanulók legyenek képesek önállóan feltelepíteni egy Visual C# Express 2008-as környezetet, eligazodni a kezelőfelületen. Tud-janak megtervezni egy Windows Forms alkalmazást, elhelyezni rajta a komponenseket, és megírni hozzájuk az eseménykezelő eljárások kódját a strukturált programozás alapelemeinek (szek-vencia, elágazás, ciklus felhasználásával). A programozás során fellépő hibákat tudják kezelni, elhárítani. Legyenek képesek meg-tervezni és megírni egy összetettebb programot (több komponens, programozási tételek, hibakezelés felhasználásával) csapatban dolgozva.
4 BEVEZETÉS A VISUAL C# 2008 HASZNÁLATÁBA • TANÁrI KÉZIKöNyV 11. ÉVFoLyAm
TANmENET
Sor-szám
Tanítási egység – témakör címe Időtartam A tanítási egység típusa
1. A Visual C# Express 2008 beszerzése, telepíté-se, felfedezése
3x45 perc Tanóra (45 perc) +Gyakorlat (2x45 perc)
2. Windows Forms alkalmazás készítése 3x45 perc Tanóra (45 perc) +Gyakorlat (2x45 perc)
3. Adatok beolvasása és kiírása, alapvető adattí-pusok, típuskonverziók, matematikai és logikai műveletek
3x45 perc Tanóra (45 perc) +Gyakorlat (2x45 perc)
4. Vezérlési szerkezetek: elágazások, ciklusok 3x45 perc Tanóra (45 perc) +Gyakorlat (2x45 perc)
5. Összetett adattípusok: rekord, tömb, feltöltés szövegfájlból
3x45 perc Tanóra (45 perc) +Gyakorlat (2x45 perc)
6. Alapvető programozási tételek megvalósítása 3x45 perc Tanóra (45 perc) +Gyakorlat (2x45 perc)
7. Hibák, hibaüzenetek és kezelésük 3x45 perc Tanóra (45 perc) +Gyakorlat (2x45 perc)
8. Kivételek kezelése, ellenőrzött adatbevitel 3x45 perc Tanóra (45 perc) +Gyakorlat (2x45 perc)
9. Projektfeladat: program készítése 3x45 perc Tanóra (45 perc) +Gyakorlat (2x45 perc)
10. Projektfeladat: program bemutatása 1x45 perc Tanóra (45 perc)
PETRIK TISZK TÁMOP-2.2.3-07/1-2F-2008-0011 5
TANíTÁSI EgySÉg ÁLTALÁNoS BEmUTATÁSA
CÍM: A VISuAL C# ExPRESS 2008 bESZERZÉSE, TELEPÍTÉSE, fELfEDEZÉSE
Sorszám: 1.Évfolyam: 11. évfolyam
Időtartam: 3x45 percA tanítási egység típusaTanóra (45 perc) Gyakorlat (2x45 perc)
Célok A C# Express 2008 hardver- és szoftverkövetelményeinek megismerése.A Visual Studio 2008 Express ingyenesen letölthető fejlesztői környezet inter-netes elérhetőségének, letölthetőségének megismerése, a telepítés végrehajtása az otthoni / iskolai számítógépen.A termékcsalád egyéb tagjainak (Basic, J#, Web Developer) ismerete.A .NET Framework és a .NET-es programfejlesztés lényegének megértése, a fordítás folyamatának ismerete.A platform- és nyelvfüggetlenség fogalmának ismerete.A fejlesztői környezet felépítésének megismerése, a konzol módú és vizuális alkalmazás közti különbség megértése, az egyes részek feladatainak elkülöní-tése. A kezelőfelület átrendezésének, az egyéni munkakörnyezet kialakításá-nak elsajátítása.
Követelmények Legyen képes eldönteni, hogy az adott gép alkalmas-e a szoftver telepítésé-re, majd ennek tudatában legyen képes letölteni és feltelepíteni a C# Express 2008-as verzióját.Legyen képes ismertetni a .NET Framework futtatókörnyezet jelentőségét, a programok fordításának folyamatát, valamint a programok hordozhatóságá-nak feltételeit.Legyen képes új projektet létrehozni, meglévő projektet megnyitni a Visual Studio környezetben. Értse a Solution és a Project különbségét. Legyen képes megnevezni a kezelőfelület részeit, és röviden elmondani a szerepüket. Legyen képes menteni a munkáját.Legyen képes átrendezni a felület elemeit, és így a saját munkakörnyezetét kialakítani.Legyen képes eligazodni a Súgóban, a számára szükséges információkat meg-keresni, valamint használni a környezetérzékeny segítséget.
Informatikai, oktatástechnikai eszközök
Számítógép: 1 db. (minimum 1 GHz-es processzorral, és 512 mB memóriá-val, ajánlott: 2 GHz-es processzor, 1 GB memóriával)Projektor, vetítővászonEgyéb, pl. speciális szoftver: Visual C# Express 2008 (nem kötelező, ha a gye-rekek maguk telepíthetik), szélessávú Internet-kapcsolat (a letöltéshez)
források, javasolt tananyagok, kiad-ványok, internetes honlapok
Tanári prezentáció: AINFO11_TP1.pptVideók: AINFo11_VID1.zip
Visual Studio 2008 Express Editionshttp://www.microsoft.com/express/ (2009. 10. 24.)Illés Zoltán (2008): Programozás C# nyelven (2008-as változat), Budapest:
Jedlik oktatási Stúdió
6 BEVEZETÉS A VISUAL C# 2008 HASZNÁLATÁBA • TANÁrI KÉZIKöNyV 11. ÉVFoLyAm
A T
AN
ÍTÁ
SI E
GY
SÉG
– T
ÉMA
KÖ
R R
ÉSZ
LET
ES
LEÍ
RÁ
SA
A T
AN
ÍTÁ
SI E
GY
SÉG
– T
ÉMA
KÖ
R C
ÍME:
A V
isual
C#
Expr
ess 2
008
besz
erzé
se, t
elep
ítése
, fel
fede
zése
Sor-
szám
Tém
a / A
ltém
aK
észs
ég /
képe
sség
Idő-
tart
am
(per
c)
Mód
szer
Mun
kafo
rma
Kép
zési
any
agok
, esz
közö
kE
gyéb
java
slat
ok
1.A
Vis
ual C
# 20
08
körn
yeze
t let
ölté
se, t
e-le
píté
se, m
egis
mer
ése,
te
stre
szab
ása
meg
figye
lés
Vid
eó, p
reze
ntác
ió n
yom
on
köve
tése
30
Taná
ri el
őadá
sV
ideó
k m
eg-
teki
ntés
e
Fron
tális
osz
-tá
lym
unka
Taná
ri pr
ezen
táci
ó a
C#
körn
ye-
zetrő
l, a
.NET
ker
etre
ndsz
errő
l ál
talá
noss
ágba
nr
övid
vid
eók
a le
tölté
sről
, tel
epí-
tésr
ől, a
felü
let f
elép
ítésé
ről,
test
re
szab
ásár
ól
Am
enny
iben
a g
épen
ren-
delk
ezés
re á
ll a
tele
píte
tt V
isua
l C#
2008
, a ta
nár b
e is
m
utat
hatja
műk
ödés
köz
ben,
a
vide
ók m
elle
tt va
gy h
elye
tt.
2.Is
mét
lő k
érdé
sek
a C
#-ró
l, a
.NET
-ről
Előt
te h
allo
tt in
form
áció
fe
lidéz
ése
A ta
nulá
si fo
lyam
at e
llenő
rzé-
se te
sztk
érdé
sek
segí
tség
ével
10
Tesz
tfela
dat-
sor ö
nálló
ki
tölté
se
Egyé
ni m
unka
Tesz
tfela
dats
or a
z 1.1
. szá
mú
mel
lékl
etbe
nA
tesz
tfela
dato
k ki
tölté
se
közb
en a
pre
zent
áció
, ille
tve
a vi
deók
ne
legy
enek
láth
atóa
k.
3.A
hel
yes v
álas
zok
meg
-be
szél
ése
Kom
mun
ikác
ióö
nelle
nőrz
ésH
ibás
vál
aszo
k ko
rrig
álás
a
5 M
egbe
szél
ésFr
ontá
lis o
sz-
tály
mun
kaH
elye
s meg
oldá
sok
az 1
.2. s
zám
ú m
ellé
klet
ben
Azt
is b
eszé
ljük
meg
, hog
y a
hely
tele
n vá
lasz
ok m
iért
nem
jó
k!4.
A V
isua
l C#
2008
kö
rnye
zet l
etöl
tése
, te
lepí
tése
Ang
ol n
yelv
ű sz
öveg
érté
s, tá
jéko
zódá
s egy
web
lapo
nA
ngol
nye
lvű
prog
ram
tele
pí-
tése
a sz
ámító
gépr
e
30
Irán
yíto
tt te
véke
nysé
gEg
yéni
mun
kaLe
tölté
si c
ím a
pre
zent
áció
ban,
ill
etve
a ta
nuló
i jeg
yzet
ben
Emlé
kezt
ető
képe
rnyő
fotó
a te
le-
píté
sről
a ta
nuló
i jeg
yzet
ben
Am
enny
iben
a g
épek
en
rend
elke
zésr
e ál
l a te
lepí
tett
Vis
ual C
# 20
08, a
z ot
thon
i gé
pre
való
tele
píté
s ház
i fe
lada
t leh
et.
5.A
Vis
ual C
# 20
08
körn
yeze
t meg
ism
erés
e,
test
re sz
abás
a
Tájé
kozó
dás e
gy sz
oftv
er
keze
lői f
elül
etén
Proj
ektb
en g
ondo
lkod
ásR
ész-
egés
z vi
szon
y fe
lism
e-ré
seM
unka
men
tése
30
Öná
lló m
anu-
ális
tevé
keny
-sé
g
Egyé
ni m
unka
Emlé
kezt
ető
képe
rnyő
fotó
k a
keze
lőfe
lüle
tről,
anna
k te
stre
sza-
básá
ról a
tanu
lói j
egyz
etbe
nFe
lada
tok
az e
gyén
i mun
kakö
r-ny
ezet
kia
lakí
tásá
ra
N
6.A
Súg
ó ha
szná
lata
Tájé
kozó
dás e
gy a
ngol
nye
lvű
szof
tver
Súg
ójáb
anSz
üksé
ges i
nfor
mác
iók
meg
-ke
resé
se, f
elha
szná
lása
20
Öná
lló m
anu-
ális
tevé
keny
-sé
g
Egyé
ni m
unka
Gyű
jtőm
unka
Emlé
kezt
ető
képe
rnyő
fotó
k a
Súgó
ról a
tanu
lói j
egyz
etbe
nFe
lada
tok,
am
elye
k se
gíts
égév
el
info
rmác
iót l
ehet
kig
yűjte
ni a
Sú
góbó
l
A g
yűjtő
mun
kát p
árba
n is
le
het v
égez
ni.
7.A
z er
edm
énye
k ös
z-sz
egzé
seK
omm
unik
áció
öne
llenő
rzés
Ered
mén
yek
össz
evet
ése
10
Meg
besz
élés
Fron
tális
osz
-tá
lym
unka
Lehe
tség
es v
álas
zok
az 1
.3. s
zám
ú m
ellé
klet
ben
(egy
ado
tt ké
rdés
re
több
lehe
tség
es v
álas
zt is
meg
le
het t
alál
ni)
Han
gsúl
yozz
uk, h
ogy
az a
dott
vála
szt h
ol é
s hog
yan
sike
rült
meg
talá
lni!
PETRIK TISZK TÁMOP-2.2.3-07/1-2F-2008-0011 7
A tanári videók ismertetése:1. A telepítő letöltése (AINFo11_VID1_01): arról szól, hogy melyik oldalról, hogyan tudjuk letölteni a
Visual C# Express 2008 telepítőjét.2. A telepítés folyamata (AINFo11_VID1_02): a C# Express 2008 telepítését mutatja be, hol, melyik
ponton milyen opciókat kell vagy lehet választani.3. Kezelőfelület: projekt létrehozása, mentése (AINFo11_VID1_03): megmutatja, hogyan tudunk új pro-
jektet létrehozni, milyen lehetőségeink vannak, illetve hogyan kell az egész projektet elmenteni.4. Kezelőfelület: részei, az egyes elemek feladata (AINFo11_VID1_04). A videó részletesen bemutatja
a kezelői felület egyes elemeit, a Toolboxot, a Solution Explorert, a Properties ablakot, a menüket, eszköztárakat, és a különféle beépülő ablakokat. Azt is megmutatja, ezeket hol tudjuk megjeleníteni, ha nem látszanak alapból.
5. Kezelőfelület: testre szabás (AINFo11_VID1_05): megmutatja, hogyan tudunk egyénre szabott mun-kakörnyezetet kialakítani, a felület egyes elemeit elrejteni, összecsukni, illetve áthelyezni. Ennek kap-csán megismertet a dokkolható ablakok kezelésével is.
6. A Súgó használata (AINFo11_VID1_06): bemutatja, hogyan tudunk segítséget kérni. Kitér a környezetérzékeny súgóra, a témakör, illetve index szerinti keresésre, és azt is megmutatja, hogyan tudunk egy kifejezésre keresni.
8 BEVEZETÉS A VISUAL C# 2008 HASZNÁLATÁBA • TANÁrI KÉZIKöNyV 11. ÉVFoLyAm
1.1. SZÁMÚ MELLÉKLET – fELADATOK
1.1. A .NET-es nyelvek fordítóprogramja közvetlenül gépi kódra fordítja le a forráskódot?Húzd alá a helyes választ!
Igen Nem
1.2. Definiáldaplatformfüggetlenségfogalmát!
1.3. Párosítsda.NETFrameworkrészeitafunkcióikkal!Írd be az üres oszlopba a kérdéshez (állításhoz, definícióhoz) tartozó válasz betűjelét!
1. BCL (Base Class Library) a) Adatbázisok kezelése
2. CLr (Common Language runtime) b) A programozási nyelvek közötti különbségek eltüntetése
3. CLS (Common Language Specification) c) Grafikus felületű, Windows-vezérlőket hasz-
náló alkalmazások4. ADo.NET d) Egységes felépítésű osztálykönyvtár5. Windows Forms e) A .NET Framework futtatókörnyezete
1.4. Melyek egy .NET program fordításának lépései?Írd le az üres oszlopba az egyes tevékenységek sorszámát abban a sorrendben, ahogy követik egymást!
a) Fordítás
b) Futtatás a CLr segítségével
c) Forráskód elkészítése
d) Virtuális gépi kód létrejötte
e) Futás közben valódi gépi kódra való fordítás
1.5. Soroldfelafőbb.NET-esprogramozásinyelveket!
PETRIK TISZK TÁMOP-2.2.3-07/1-2F-2008-0011 9
1.2. SZÁMÚ MELLÉKLET – MEGOLDÁSOK
1.1. A .NET-es nyelvek fordítóprogramja közvetlenül gépi kódra fordítja le a forráskódot?Húzd alá a helyes választ!
Igen Nem
1.2. Definiáldaplatformfüggetlenségfogalmát!A programok fejlesztése független az operációs rendszertől és az azt futtató processzortól.
1.3. Párosítsda.NETFrameworkrészeitafunkcióikkal!Írd be az üres oszlopba a fogalomhoz tartozó funkció betűjelét!
1. BCL (Base Class Library) d) a) Adatbázisok kezelése
2. CLr (Common Language runtime) e) b) A programozási nyelvek közötti különbségek eltüntetése
3. CLS (Common Language Specification) b) c) Grafikus felületű, Windows-vezérlőket hasz-
náló alkalmazások4. ADo.NET a) d) Egységes felépítésű osztálykönyvtár5. Windows Forms c) e) A .NET Framework futtatókörnyezete
1.4. Melyek egy .NET program fordításának lépései?Írd le az üres oszlopba az egyes tevékenységek sorszámát abban a sorrendben, ahogy követik egymást!
a) Fordítás 2.b) Futtatás a CLr segítségével 4.c) Forráskód elkészítése 1.d) Virtuális gépi kód létrejötte 3.e) Futás közben valódi gépi kódra való fordítás 5.
1.5. Soroldfelafőbb.NET-esprogramozásinyelveket!Basic, C++, C#, J#, JScript.
10 BEVEZETÉS A VISUAL C# 2008 HASZNÁLATÁBA • TANÁrI KÉZIKöNyV 11. ÉVFoLyAm
1.3. SZÁMÚ MELLÉKLET – A TANuLÓI JEGYZET fELADATAINAK MEGOLDÁSAI
1.1. Milyen konfigurációjú számítógép szükséges a Visual C# 2008 Express futtatásához?Keresdmegahardverkövetelményeketafentmegadottoldalon!Töltsd ki a táblázatot!
Windows XP Windows Vista / 7 Windows Server 2008 / 2008 R2
Processzor (CPU) 1 GHz (1,6 GHz az ideális)
1,6 GHz (2,2 GHz az ideális)
2,4 GHz
Memória (RAM) 192 MB (384 MB az ideális)
768 MB (1 GB az ideális)
768 MB (1 GB az ideális)
1.3. Telepítsd fel a Visual C# 2008-at az iskolai számítógépre, amennyiben alkalmas a futtatására,ésmégnincsenrajta!Gyűjtsdössze,hogyafentláthatókomponensenkívülmégmittöltleéstelepítaszámítógépre!
Például: SQL Server 2008 Express, Visual C++ redistributable, microsoft .NET Framework, micro-soft .NET Compact Framework, …
1.5.
PETRIK TISZK TÁMOP-2.2.3-07/1-2F-2008-0011 11
1.6. Melyik elemnek mi a feladata?Írd be az üres oszlopba a kérdéses elemhez tartozó feladatleírás betűjelét!
1. Toolbox c) a) A Solutionhöz tartozó projektek, és azok állo-mányait tartalmazó ablak
2. Error list e) b) Az objektumok tulajdonságait és eseményeit tartalmazó ablak
3. Form Design nézet d) c) A Windows alkalmazás fejlesztéséhez felhasz-nálható komponensek gyűjteménye
4. Properties b) d) A form grafikai megtervezését megkönnyítő ablak
5. Solution Explorer a) e) Hibák, figyelmeztetések, üzenetek ablaka
1.7. Írdle,hogyantudunkváltaniaformkinézete(Design)éskódjaközött!Jobb gomb a formon, majd View Code. Utána pedig a fülecskék segítségével.
1.9. Mirevalóakisrajzszögikonazeszközpalettákjobbfelsősarkában?Automatikusan elrejthetjük az egyes eszközpalettákat, vagy rögzítjük őket az ablakhoz.
1.10. GyűjtsdkiaSúgóbólaC#Express2008legfontosabbújításaitcímszavakban!(What’snewin Visual C# Express)
Various Compiler ImprovementsLive Semantic ErrorsLINQ Query DebuggingTask List Comments Are Displayed for All Files in Solutionrename refactoring in Windows Presentation Foundation Projects
12 BEVEZETÉS A VISUAL C# 2008 HASZNÁLATÁBA • TANÁrI KÉZIKöNyV 11. ÉVFoLyAm
1.11. KeressaSúgóbanpéldáttömbökdeklarációjára,ésírjleidelegalábbkétpéldát!(arrays,examples)
// Single-dimensional array (numbers).
int[] n1 = new int[4] {2, 4, 6, 8};
int[] n2 = new int[] {2, 4, 6, 8};
int[] n3 = {2, 4, 6, 8};
// Single-dimensional array (strings).
string[] s1 = new string[3] {”John”, ”Paul”, ”Mary”};
string[] s2 = new string[] {”John”, ”Paul”, ”Mary”};
string[] s3 = {”John”, ”Paul”, ”Mary”};
// Multidimensional array.
int[,] n4 = new int[3, 2] { {1, 2}, {3, 4}, {5, 6} };
int[,] n5 = new int[,] { {1, 2}, {3, 4}, {5, 6} };
int[,] n6 = { {1, 2}, {3, 4}, {5, 6} };
// Jagged array.
int[][] n7 = new int[2][] { new int[] {2,4,6}, new int[]
{1,3,5,7,9} };
int[][] n8 = new int[][] { new int[] {2,4,6}, new int[] {1,3,5,7,9}
};
int[][] n9 = { new int[] {2,4,6}, new int[] {1,3,5,7,9} };
1.12. ASúgóSearchfunkciójáthasználvakeressráaforeachkulcsszóra!Írdleapéldakódot,amittalálsz!
class ForEachTest
{
static void Main(string[] args)
{
int[] fibarray = new int[] { 0, 1, 2, 3, 5, 8, 13 };
foreach (int i in fibarray)
{
System.Console.WriteLine(i);
}
}
}
PETRIK TISZK TÁMOP-2.2.3-07/1-2F-2008-0011 13
TANíTÁSI EgySÉg ÁLTALÁNoS BEmUTATÁSA
CÍM:WINDoWSForMSAlKAlMAzáSKéSzÍTéSESorszám: 2.Évfolyam: 11. évfolyam
Időtartam: 3x45 percA tanítási egység típusaTanóra (45 perc) Gyakorlat (2x45 perc)
Célok Az objektum-orientált programozás alapjainak elsajátítása, a legfontosabb fo-galmak ismerete (objektumok, tulajdonságok, események, eseménykezelő me-tódusok).Egy alap Windows Forms alkalmazás grafikus felületének elkészítése, még kód nélkül.Grafikus komponensek legfontosabb tulajdonságainak, azok lehetséges érté-keinek ismerete, a tulajdonságok értékeinek megváltoztatásának elsajátítása tervezési időben és programkódban.Eseménykezelő metódusok megírása, illetve eltávolítása a kódból.
Követelmények Ismerje az objektum-orientált programozás alapfogalmait, és ezek jelenlétét ismerje fel a grafikus felületen, illetve a programkódban.Legyen képes elkészíteni egy üres Windows Forms alkalmazást, még egyelőre kód nélkül, a legfontosabb komponensek elhelyezésével, az elemek szabályos elrendezésével.Legyen képes az egyes grafikus komponensek tulajdonságainak lekérdezésé-re, ezek beállítására. Harmonikus színösszeállításokat használjon.Legyen képes a tulajdonságok értékeit kódból is beállítani, eseménykezelő metódusok megírásával. Legyen képes a megírt kódot másik metódusba áthe-lyezni, és a felesleges metódusokat hiba nélkül eltávolítani.
Informatikai, oktatástechnikai eszközök
Számítógép: 1 db. (minimum 1 GHz-es processzorral, és 512 mB memóriá-val, ajánlott: 2 GHz-es processzor, 1 GB memóriával)Projektor, vetítővászonEgyéb, pl. speciális szoftver: Visual C# Express 2008, szélessávú Internet-kapcsolat (a Súgóhoz).
források, javasolt tananyagok, kiad-ványok, internetes honlapok
Tanári prezentáció: AINFO11_TP2.pptVideók: AINFo11_VID2.zipMintaprogramok: AINFO11_Mintaprogramok2.zip
Visual Studio 2008 Express Editionshttp://www.microsoft.com/express/ (2009. 10. 24.)Illés Zoltán (2008): Programozás C# nyelven (2008-as változat), Budapest:
Jedlik oktatási Stúdió
14 BEVEZETÉS A VISUAL C# 2008 HASZNÁLATÁBA • TANÁrI KÉZIKöNyV 11. ÉVFoLyAm
A T
AN
ÍTÁ
SI E
GY
SÉG
– T
ÉMA
KÖ
R R
ÉSZ
LET
ES
LEÍ
RÁ
SA
A T
AN
ÍTÁ
SI E
GY
SÉG
– T
ÉMA
KÖ
R C
ÍME:
WindowsF
ormsa
lkalmazáskészítése
Sor-
szám
Tém
a / A
ltém
aK
észs
ég /
képe
sség
Időtartam
(per
c)M
ódsz
erM
unka
form
aK
épzé
si a
nyag
ok, e
szkö
zök
Egy
éb ja
vasl
atok
1.W
indo
ws F
orm
s al-
kalm
azás
kés
zíté
sem
egfig
yelé
sV
ideó
, pre
zent
áció
nyo
-m
on k
övet
ése
30
Taná
ri el
ő-ad
ásV
ideó
k m
eg-
teki
ntés
e
Fron
tális
osz
-tá
lym
unka
Taná
ri pr
ezen
táci
ó a
Win
dow
s For
ms
alka
lmaz
ások
ról,
az o
bjek
tum
okró
l, tu
-la
jdon
ságo
król
, ese
mén
yekr
ől á
ltalá
ban
Röv
id v
ideó
k az
obj
ektu
mok
ról,
azok
el
hely
ezés
éről
, iga
zítá
sáró
l, je
llem
ző
tula
jdon
sága
ikró
l, es
emén
yeik
ről
Am
enny
iben
a g
épen
ren-
delk
ezés
re á
ll a
tele
píte
tt V
isua
l C#
2008
, a ta
nár b
e is
m
utat
hatja
műk
ödés
köz
ben,
a
vide
ók m
elle
tt va
gy h
elye
tt.
2.Is
mét
lő k
érdé
sek
az
obje
ktum
okró
lEl
őtte
hal
lott
info
rmác
ió
felid
ézés
eA
tanu
lási
foly
amat
el
lenő
rzés
e te
sztk
érdé
sek
segí
tség
ével
10
Tesz
t-fel
adat
-so
r öná
lló
kitö
ltése
Egyé
ni m
unka
Tesz
tfela
dats
or a
2.1.
szám
ú m
ellé
klet
-be
nA
tesz
tfela
dato
k ki
tölté
se
közb
en a
pre
zent
áció
, ille
tve
a vi
deók
ne
legy
enek
láth
atóa
k.
3.A
hel
yes v
álas
zok
meg
besz
élés
eK
omm
unik
áció
öne
llenő
rzés
Hib
ás v
álas
zok
korr
igál
ása
5 M
egbe
szél
ésFr
ontá
lis o
sz-
tály
mun
kaH
elye
s meg
oldá
sok
a 2.
2. sz
ámú
mel
-lé
klet
ben
Azt
is b
eszé
ljük
meg
, hog
y a
hely
tele
n vá
lasz
ok m
iért
nem
jó
k!4.
Win
dow
s For
ms a
l-ka
lmaz
ás k
észí
tése
1.
Gra
fikus
felü
let t
erve
zése
Prec
izitá
sIg
énye
sség
re tö
rekv
ésR
epro
dukc
ió m
inta
ala
pján
20
Irán
yíto
tt te
véke
nysé
gEg
yéni
mun
ka2.
1. fe
lada
t a ta
nuló
i jeg
yzet
ben:
ké
pern
yőfo
tó e
gy a
lkal
maz
ás k
ezel
ői
felü
leté
ről,
amit
repr
oduk
álni
kel
l (le
hető
leg
min
él p
onto
sabb
an, ü
gyel
ve
a ko
mpo
nens
ek il
lesz
kedé
sére
)
men
tsük
el é
s őri
zzük
meg
ez
t az
alka
lmaz
ást,
mer
t a
késő
bbi f
elad
atok
hoz
szük
ség
lesz
rá.
5.W
indo
ws F
orm
s al-
kalm
azás
kés
zíté
se 2
.Sz
inta
ktik
ai sz
abál
yok
köve
tése
Típu
sfog
alom
felis
mer
ése
Egys
zerű
és ö
ssze
tett
tula
j-do
nság
ok b
eállí
tása
20
Irán
yíto
tt te
véke
nysé
gEg
yéni
mun
ka2.
2. fe
lada
t a ta
nuló
i jeg
yzet
ben:
az
előz
ő po
ntba
n ki
alak
ított
alka
lmaz
ás
felü
leté
nek
meg
terv
ezés
e ut
án g
rafik
us
felü
letrő
l, ill
etve
kód
ból b
eállí
tjuk
a ko
mpo
nens
ek a
lapt
ulaj
dons
ágai
t.m
inta
meg
oldá
s: Pe
lda_
Win
Form
s
men
tsük
el é
s őri
zzük
meg
ez
t az
alka
lmaz
ást,
mer
t a
késő
bbi f
elad
atok
hoz
szük
ség
lesz
rá. (
2.3.
fela
dat a
tanu
lói
jegy
zetb
en)
6.Tu
lajd
onsá
gok
beál
lí-tá
sa k
ódbó
lSz
inta
ktik
ai sz
abál
yok
köve
tése
Súgó
has
znál
ata
Érté
kadá
sok
gyak
orlá
sa
40
Öná
lló
man
uális
te
véke
nysé
g
Egyé
ni m
unka
A ta
nuló
i jeg
yzet
2.4
. fel
adat
ában
apr
ó ré
szfe
lada
toko
n ke
resz
tül g
yako
rolta
t-ju
k az
egy
es k
ompo
nens
ek tu
lajd
onsá
-ga
inak
beá
llítá
sát (
szín
ezés
, iga
zítá
s, m
éret
, poz
íció
, bet
űtíp
us, b
etűm
éret
).
Az
elké
szül
t pro
gram
ot a
dják
be
a ta
nár á
ltal m
egad
ott
hely
re!
PETRIK TISZK TÁMOP-2.2.3-07/1-2F-2008-0011 15
A T
AN
ÍTÁ
SI E
GY
SÉG
– T
ÉMA
KÖ
R C
ÍME:
WindowsF
ormsa
lkalmazáskészítése
Sor-
szám
Tém
a / A
ltém
aK
észs
ég /
képe
sség
Időtartam
(per
c)M
ódsz
erM
unka
form
aK
épzé
si a
nyag
ok, e
szkö
zök
Egy
éb ja
vasl
atok
7.A
z er
edm
énye
k ös
z-sz
egzé
seK
omm
unik
áció
öne
llenő
rzés
Ered
mén
yek
össz
evet
ése
10
Meg
besz
élés
Fron
tális
osz
-tá
lym
unka
A 2
.4. f
elad
at e
gy le
hets
éges
meg
oldá
sa
a ta
nári
jegy
zet 2
.3. s
zám
ú m
ellé
klet
é-be
n (e
gy a
dott
fela
dato
t töb
bfél
ekép
pen
is m
eg le
het o
ldan
i).M
inta
meg
oldá
s:Tu
lajd
onsa
gok_
Gya
korla
s
Bes
zéljü
k m
eg, h
ogy
a he
lyes
m
egol
dást
hog
yan
sike
rült
meg
talá
lni!
Ház
i fel
adat
: a ta
nuló
i jeg
yzet
2.
5. é
s 2.6
. fel
adat
a.
A ta
nári
vid
eók
ismer
teté
se:
1. o
bjek
tum
ok, t
ulaj
dons
ágok
, ese
mén
yek
(AIN
Fo11
_VID
2_01
): m
egm
utat
ja, h
ogy
mik
épp
lehe
t új o
bjek
tum
ot e
lhel
yezn
i a fo
rmra
, hog
yan
lehe
t az
aktív
obj
ektu
mot
kiv
álas
ztan
i, és
vál
tani
a tu
lajd
onsá
gok
és a
z es
emén
yek
közö
tt.2.
obj
ektu
mok
elh
elye
zése
, iga
zítá
sa (A
INFo
11_V
ID2_
02):
bem
utat
ja, h
ogya
n le
het e
lhel
yezn
i, át
mér
etez
ni a
z eg
yes o
bjek
tum
okat
. Kité
r arr
a is
, mi
mód
on le
het e
szté
tikus
kez
előf
elül
etek
et k
iala
kíta
ni, h
ogya
n le
het e
gym
ásho
z ig
azíta
ni a
felü
let e
lem
eit.
3. T
ulaj
dons
ágok
érté
kéne
k be
állít
ása,
ese
mén
ykez
elők
írás
a (A
INFo
11_V
ID2_
03):
meg
mut
atja
, hog
yan
tudj
uk a
kül
önbö
ző tí
pusú
tula
jdon
ságo
k ér
téke
it be
állít
ani,
mód
osíta
ni a
kez
előf
elül
etrő
l, ho
gyan
tudu
nk ú
j ese
mén
ykez
előt
írni
, és m
eglé
vőt t
öröl
ni a
kód
ból.
16 BEVEZETÉS A VISUAL C# 2008 HASZNÁLATÁBA • TANÁrI KÉZIKöNyV 11. ÉVFoLyAm
2.1. SZÁMÚ MELLÉKLET – fELADATOK
2.1. Definiáldazosztályfogalmát!
2.2. Mi a kapcsolat az osztály, objektum, tulajdonság, esemény, eseménykezelő metódusközött?Töltsd ki a táblázatot!
fogalom Példa
Osztály Label
label1 (típusa: Label)
Name
Tulajdonság értéke
Click
Eseménykezelő metódus
2.3. Melyikjellemzőtmelyiktulajdonsággallehetbeállítani?Írd be az üres oszlopba a definícióhoz tartozó válasz betűjelét!
1. Szélesség a) Visible
2. Magasság b) AutoSize
3. Automatikus méretezés c) Height
4. Távolság az ablak bal szélétől d) Enabled
5. Távolság az ablak tetejétől e) Name
6. Látható f) Text
7. Engedélyezett g) Left
8. Név (mint változó) h) Width
9. Felirat i) Top
PETRIK TISZK TÁMOP-2.2.3-07/1-2F-2008-0011 17
2.4. Nevezdmegazalábbiábrántalálhatókomponenseket!
1.ábra.WindowsFormskomponensek
2.5. Egészítsdkiazalábbieseménykezelőmetóduskódját,hogyakövetkezőttudja:Alabel1nevűcímkétengedjeátméretezni,méretelegyen100x150pixel. – felirata legyen: „Visual C# 2008 Express”. – Ne legyen látható. –
private void button1_Click(object sender, EventArgs e)
{
}
18 BEVEZETÉS A VISUAL C# 2008 HASZNÁLATÁBA • TANÁrI KÉZIKöNyV 11. ÉVFoLyAm
2.2. SZÁMÚ MELLÉKLET – MEGOLDÁSOK
2.1. Definiáldazosztályfogalmát!Az osztály az azonos tulajdonságokkal (jellemzőkkel) és viselkedéssel rendelkező egyedeket zárja egységbe.
2.2. Mi a kapcsolat az osztály, objektum, tulajdonság, esemény, eseménykezelő metódusközött?Töltsd ki a táblázatot!
fogalom PéldaOsztály LabelObjektum label1 (típusa: Label)Tulajdonság NameTulajdonság értéke label1Esemény ClickEseménykezelő metódus label1_Click
2.3. Melyikjellemzőtmelyiktulajdonsággallehetbeállítani?Írd be az üres oszlopba a definícióhoz tartozó válasz betűjelét!
1. Szélesség h) a) Visible2. Magasság c) b) AutoSize3. Automatikus méretezés b) c) Height4. Távolság az ablak bal szélétől g) d) Enabled5. Távolság az ablak tetejétől i) e) Name6. Látható a) f) Text7. Engedélyezett d) g) Left8. Név (mint változó) e) h) Width9. Felirat f) i) Top
PETRIK TISZK TÁMOP-2.2.3-07/1-2F-2008-0011 19
2.4. Nevezdmegazalábbiábrántalálhatókomponenseket!
2.5. Egészítsdkiazalábbieseménykezelőmetóduskódját,hogyakövetkezőttudja:Alabel1nevűcímkétengedjeátméretezni,méretelegyen100x150pixel. –felirata legyen: „Visual C# 2008 Express”. –Ne legyen látható. –
private void button1_Click(object sender, EventArgs e)
{ label1.AutoSize = true; label1.Width = 100; label1.Height = 150; label1.Text = ”Visual C# 2008 Express”; label1.Visible = false; }
20 BEVEZETÉS A VISUAL C# 2008 HASZNÁLATÁBA • TANÁrI KÉZIKöNyV 11. ÉVFoLyAm
2.3. SZÁMÚ MELLÉKLET – A TANuLÓI JEGYZET fELADATAINAK MEGOLDÁSAI
A tanulói jegyzet 2.4. feladatának (egy lehetséges) megoldása:
private void button1_Click(object sender, EventArgs e)
{
button1.Text = ”Form beállítása”;
button2.Text = ”Címke beállítása”;
button1.AutoSize = true;
button2.AutoSize = true;
this.Text = ”Tulajdonságok gyakorlása”;
this.BackColor = Color.CornflowerBlue;
}
private void button2_Click(object sender, EventArgs e)
{
button1.Enabled = false;
label1.AutoSize = false;
label1.Width = 100;
label1.Height = 50;
label1.BackColor = Color.GreenYellow;
label1.Left = 10;
label1.Top = 10;
}
private void button3_Click(object sender, EventArgs e)
{
label1.TextAlign = ContentAlignment.MiddleCenter;
label1.Font = new Font(label1.Font.FontFamily,
label1.Font.Size + 2);
label1.Width = label1.Width + 10;
label1.Height = label1.Height + 10;
}
PETRIK TISZK TÁMOP-2.2.3-07/1-2F-2008-0011 21
TANíTÁSI EgySÉg ÁLTALÁNoS BEmUTATÁSA
CÍM:ADAToKbEolVASáSAéSKIÍráSA,AlAPVETőADATTÍPuSOK, TÍPuSKONVERZIÓK, MATEMA-TIKAIéSloGIKAIMűVElETEK
Sorszám: 3.
Évfolyam: 11. évfolyam
Időtartam: 3x45 perc A tanítási egység típusaTanóra (45 perc) Gyakorlat (2x45 perc)
Célok Kommunikáció a felhasználóval: adatbevitel billentyűzetről és adatok kiírá-sa.Alapvető adattípusok, és azok lehetséges értékeinek ismerete.A változó fogalmának megismerése, összekapcsolás a típussal, a változók dek-larálásának elsajátítása.Különböző típusú változók értékül adásának lehetőségei, az ezzel kapcsolatos rejtett (implicit) és közvetlen (explicit) típuskonverziók végrehajtásának mód-jai.Az ismert matematikai és logikai műveletek alkalmazási lehetőségeinek meg-ismerése a C# nyelvben.
Követelmények Legyen képes a grafikus felületen kommunikálni a felhasználóval. Legyen ké-pes adatot beolvasni (TextBox segítségével), illetve az eredményeket megjele-níteni (címkén, MessageBox-ban, illetve ListBoxban).Ismerje az alapvető adattípusokat, tudjon ilyen típusú változókat deklarálni, és legyen képes helyesen értéket adni a változóinak.Ismerje fel azt a helyzetet, amikor a környezet maga végez el típusok közti átalakítást, és szükség esetén legyen képes maga is elvégezni ilyeneket.Legyen képes a matematikában és a matematikai logikában megismert alap-műveleteket megvalósítani, és ezek eredményét a képernyőn megjeleníteni.
Informatikai, oktatástechnikai eszközök
Számítógép: 1 db. (minimum 1 GHz-es processzorral, és 512 mB memóriá-val, ajánlott: 2 GHz-es processzor, 1 GB memóriával)Projektor, vetítővászonEgyéb, pl. speciális szoftver: Visual C# Express 2008, szélessávú Internet-kapcsolat (a Súgóhoz)
források, javasolt tananyagok, kiad-ványok, internetes honlapok
Tanári prezentáció: AINFO11_TP3.pptMintaprogramok: AINFO11_Mintaprogramok3.zip
Visual Studio 2008 Express Editionshttp://www.microsoft.com/express/ (2009. 10. 24.)Illés Zoltán (2008): Programozás C# nyelven (2008-as változat), Budapest:
Jedlik oktatási Stúdió
22 BEVEZETÉS A VISUAL C# 2008 HASZNÁLATÁBA • TANÁrI KÉZIKöNyV 11. ÉVFoLyAm
A T
AN
ÍTÁ
SI E
GY
SÉG
– T
ÉMA
KÖ
R R
ÉSZ
LET
ES
LEÍ
RÁ
SA
A T
AN
ÍTÁ
SI E
GY
SÉG
– T
ÉMA
KÖ
R C
ÍME:
Adatokbeolvasásaésk
iírása,alapvetőadattíp
usok,típuskonverziók,m
atem
atikaiéslogi-
kaim
űveletek
Sor-
szám
Tém
a / A
ltém
aK
észs
ég /
képe
sség
Idő-
tart
am
(per
c)
Mód
szer
Mun
kafo
rma
Kép
zési
any
agok
, esz
közö
kE
gyéb
java
slat
ok
1.A
dato
k be
olva
sása
és
kiírá
sa, a
lapv
ető
adat
tí-pu
sok,
típu
skon
verz
iók,
m
atem
atik
ai é
s log
ikai
m
űvel
etek
meg
figye
lés
Vid
eó, p
reze
ntác
ió n
yom
on
köve
tése
30
Taná
ri el
ő-ad
ásFr
ontá
lis o
sz-
tály
mun
kaTa
nári
prez
entá
ció
az a
datb
eolv
asá-
sok
mik
éntjé
ről,
az e
hhez
kap
csol
ódó
vizu
ális
kom
pone
nsek
has
znál
atár
ól, a
vá
ltozó
król
és t
ípus
okró
l, ko
nver
ziók
-ró
l, m
űvel
etek
ről
Am
enny
iben
a g
épen
re
ndel
kezé
sre
áll a
tele
-pí
tett
Vis
ual C
# 20
08,
a ta
nár b
e is
mut
atha
tja
min
dezt
műk
ödés
köz
-be
n is
.2.
Ism
étlő
kér
dése
k típ
usok
-ró
l, vá
ltozó
król
, kon
ver-
ziók
ról
Előt
te h
allo
tt in
form
áció
fe
lidéz
ése
A ta
nulá
si fo
lyam
at e
llenő
rzé-
se te
sztk
érdé
sek
segí
tség
ével
10
Tesz
t-fel
-ad
atso
r öná
l-ló
kitö
ltése
Egyé
ni m
unka
Tesz
tfela
dats
or a
3.1.
szám
ú m
ellé
klet
-be
nA
tesz
tfela
dato
k ki
tölté
-se
köz
ben
a pr
ezen
táci
ó ne
legy
en lá
that
ó.
3.A
hel
yes v
álas
zok
meg
-be
szél
ése
Kom
mun
ikác
ióö
nelle
nőrz
ésH
ibás
vál
aszo
k ko
rrig
álás
a
5 M
egbe
szél
ésFr
ontá
lis o
sz-
tály
mun
kaH
elye
s meg
oldá
sok
a 3.
2. sz
ámú
mel
-lé
klet
ben
Azt
is b
eszé
ljük
meg
, ho
gy a
hel
ytel
en v
ála-
szok
mié
rt ne
m jó
k!4.
Gya
korlá
s irá
nyíto
tt fe
lada
tok
segí
tség
ével
, új
kom
pone
nsek
meg
is-
mer
ése
Gra
fikus
kom
pone
nsek
has
z-ná
lata
Abs
ztra
kt g
ondo
lkod
ásH
elye
s szi
ntak
tika
elsa
játít
ása
Típu
sokb
an g
ondo
lkod
ásK
omm
unik
áció
a fe
lhas
zná-
lóva
l
40
Irán
yíto
tt te
véke
nysé
gEg
yéni
mun
ka3.
1. fe
lada
t a ta
nuló
i jeg
yzet
ben:
lé
pésr
ől lé
pésr
e el
kész
ítünk
egy
oly
an
prog
ram
ot, a
mel
y ad
atok
at o
lvas
be,
sz
ámol
, maj
d m
egje
lení
ti az
ere
dmé-
nyek
et3.
2. fe
lada
t a ta
nuló
i jeg
yzet
ben:
logi
-ka
i műv
elet
ek h
aszn
álat
át p
róbá
ljuk
ki, m
iköz
ben
meg
tanu
ljuk
a C
heck
Box
ha
szná
latá
t3.
3. fe
lada
t a ta
nuló
i jeg
yzet
ben:
a
List
Box
ala
pvet
ő ha
szná
latá
t tan
ulju
k m
eg e
gy n
agyo
n eg
ysze
rű a
lkal
maz
ás
elké
szíté
séve
l.
N
PETRIK TISZK TÁMOP-2.2.3-07/1-2F-2008-0011 23
A T
AN
ÍTÁ
SI E
GY
SÉG
– T
ÉMA
KÖ
R C
ÍME:
Adatokbeolvasásaésk
iírása,alapvetőadattíp
usok,típuskonverziók,m
atem
atikaiéslogi-
kaim
űveletek
Sor-
szám
Tém
a / A
ltém
aK
észs
ég /
képe
sség
Idő-
tart
am
(per
c)
Mód
szer
Mun
kafo
rma
Kép
zési
any
agok
, esz
közö
kE
gyéb
java
slat
ok
5.Eg
ysze
rűbb
Win
dow
s Fo
rms a
lkal
maz
ások
ké
szíté
se
Szin
takt
ikai
szab
ályo
k kö
ve-
tése
Érté
kadá
sok
gyak
orlá
saV
álto
zók,
típu
sok
gyak
orlá
saSz
öveg
es fe
lada
tok
meg
oldá
sa
prog
ram
ozás
i esz
közö
kkel
40
Öná
lló
man
uális
te
véke
nysé
g
Egyé
ni m
unka
Tová
bbi f
elad
atok
a ta
nuló
i jeg
yzet
ben:
az
edd
igi i
smer
etek
re tá
mas
zkod
va
kise
bb p
rogr
amok
at k
ell í
rni (
péld
ául
beol
vasn
i egy
tégl
alap
két
old
alát
, és
kiír
ni a
ker
ület
ét, t
erül
etét
)
A fe
lada
tokh
oz m
ellé
-ke
lt m
inta
meg
oldá
sok
kódj
a a
taná
rok
szám
ára
hozz
áfér
hető
, a d
iáko
k cs
ak a
futta
that
ó pr
og-
ram
okat
(EX
E) k
apjá
k m
eg!
6.A
z er
edm
énye
k ös
szeg
-zé
seK
omm
unik
áció
öne
llenő
rzés
Ered
mén
yek
össz
evet
ése
10
Meg
besz
élés
Fron
tális
osz
-tá
lym
unka
A fe
lada
tok
lehe
tség
es m
egol
dása
it be
szél
jük
meg
(am
ire ju
t idő
).H
ázi f
elad
at: a
tanu
lói
jegy
zet 3
.7. fe
lada
ta.
24 BEVEZETÉS A VISUAL C# 2008 HASZNÁLATÁBA • TANÁrI KÉZIKöNyV 11. ÉVFoLyAm
3.1. SZÁMÚ MELLÉKLET – fELADATOK
3.1. Melyikháromjellemzőtfoglaljamagábaegyadattípusa?1.
2.
3.
3.2. Helyesek-eakövetkezőváltozónevek?Töltsd ki a táblázatot!
Változó neve Helyes / Helytelen?
3alma
xyz7
prog?
teglalap terulete
teglalap_terulete
3.3. Melyik adattípushoz melyik kulcsszó tartozik?Írd be az üres oszlopba a definícióhoz tartozó válasz betűjelét!
1. Egész szám a) bool
2. Valós szám b) int
3. Karakter c) string
4. Szöveg d) char
5. Logikai e) double
PETRIK TISZK TÁMOP-2.2.3-07/1-2F-2008-0011 25
3.4. Milyen értéket kapnak a változók az alábbi utasítások lefutása után?int x = 7 / 3;int y = 4 * x;double z = x / (double)y;char c = ’f’;string s = c.ToString() + ’a’;
bool l = false && true;
x =
y =
z =
c =
s =
l =
3.5. Egészítsdkiazalábbieseménykezelőmetóduskódját,hogyakövetkezőttudja:A textbox1 és textbox2 tartalmát konvertáld egész számmá, és add értékül az ezzel –egyidejűlegdeklaráltxésynevűegésztípusúváltozóknak.Vegyél fel egy z egész számot, és add neki értékül x és y szorzatát. –Írdkiazértékétegycímkére,„Azértéke:”szövegután! –
private void button1_Click(object sender, EventArgs e)
{
}
26 BEVEZETÉS A VISUAL C# 2008 HASZNÁLATÁBA • TANÁrI KÉZIKöNyV 11. ÉVFoLyAm
3.2. SZÁMÚ MELLÉKLET – MEGOLDÁSOK
3.2. Melyikháromjellemzőtfoglaljamagábaegyadattípusa?1. típusértékhalmaz: milyen halmazból veheti fel az értékeit2. műveletek: milyen műveleteket lehet végezni ezeken az értékeken3. szerkezet: hogyan épül fel más típusokból (csak összetett típus esetén)
3.2. Helyesek-eakövetkezőváltozónevek?Töltsd ki a táblázatot!
Változó neve Helyes / Helytelen?3alma helytelenxyz7 helyesprog? helytelenteglalap terulete helytelenteglalap_terulete helyes
3.3. Melyik adattípushoz melyik kulcsszó tartozik?Írd be az üres oszlopba a definícióhoz tartozó válasz betűjelét!
1. Egész szám b) a) bool
2. Valós szám e) b) int
3. Karakter d) c) string
4. Szöveg c) d) char
5. Logikai a) e) double
3.4. Milyen értéket kapnak a változók az alábbi utasítások lefutása után?int x = 7 / 3;int y = 4 * x;double z = x / (double)y;char c = ’f’;string s = c.ToString() + ’a’;
bool l = false && true;
x = 2
y = 8
z = 0.25
c = f
s = fa
l = false
PETRIK TISZK TÁMOP-2.2.3-07/1-2F-2008-0011 27
3.5. Egészítsdkiazalábbieseménykezelőmetóduskódját,hogyakövetkezőttudja:A textBox1 és textBox2 tartalmát konvertáld egész számmá, és add értékül az ezzel egyide- –jűleg deklarált x és y nevű egész típusú változóknak.Vegyél fel egy z egész számot, és add neki értékül x és y szorzatát. –Írd ki a z értékét egy címkére, „A z értéke: ” szöveg után! –
private void button1_Click(object sender, EventArgs e)
{ int x = int.Parse(textBox1.Text); int y = int.Parse(textBox2.Text); int z = x * y; label1.Text = ”A z értéke: ” + z.ToString();
}
28 BEVEZETÉS A VISUAL C# 2008 HASZNÁLATÁBA • TANÁrI KÉZIKöNyV 11. ÉVFoLyAm
TANíTÁSI EgySÉg ÁLTALÁNoS BEmUTATÁSA
CÍM: VEZÉRLÉSI SZERKEZETEK: ELÁGAZÁSOK, CIKLuSOK
Sorszám: 4.Évfolyam: 11. évfolyam
Időtartam: 3x45 perc A tanítási egység típusaTanóra (45 perc) Gyakorlat (2x45 perc)
Célok Elágazások megismerése és begyakorlása a C# nyelvben: if, illetve a switch-case utasításpár.Ciklusok megismerése és begyakorlása a C# nyelvben: while, for, illetve do-while.Bonyolultabb programok írása elágazások és ciklusok segítségével, azok szek-venciájaként.
Követelmények Legyen képes egy- és két-, valamint többirányú elágazásokat írni, és ezeket egymásba ágyazni. Legyen képes összetett feltételeket megfogalmazni és le-írni az ismert logikai műveletek segítségével.Legyen képes programrészeket ismételten végrehajtani ciklusok segítségével. Ismerje fel a for és a while ciklus ikervonásait. Legyen tisztában a hátultesztelő ciklus alkalmazhatóságával.Legyen képes egy összetettebb feladatot megoldani, amelyben elágazások és ciklusok is szerepelnek.
Informatikai, oktatástechnikai eszközök
Számítógép: 1 db. (minimum 1 GHz-es processzorral, és 512 mB memóriá-val, ajánlott: 2 GHz-es processzor, 1 GB memóriával)Projektor, vetítővászonEgyéb, pl. speciális szoftver: Visual C# Express 2008, szélessávú Internet-kapcsolat (a Súgóhoz).
források, javasolt tananyagok, kiad-ványok, internetes honlapok
Tanári prezentáció: AINFO11_TP4.pptMintaprogramok: AINFO11_Mintaprogramok4.zip
Visual Studio 2008 Express Editionshttp://www.microsoft.com/express/ (2009. 10. 24.)Illés Zoltán (2008): Programozás C# nyelven (2008-as változat), Budapest:
Jedlik oktatási Stúdió
PETRIK TISZK TÁMOP-2.2.3-07/1-2F-2008-0011 29
A T
AN
ÍTÁ
SI E
GY
SÉG
– T
ÉMA
KÖ
R R
ÉSZ
LET
ES
LEÍ
RÁ
SA
A T
AN
ÍTÁ
SI E
GY
SÉG
– T
ÉMA
KÖ
R C
ÍME:
Vez
érlé
si sz
erke
zete
k: e
lága
záso
k, c
iklu
sok
Sor-
szám
Tém
a / A
ltém
aK
észs
ég /
képe
sség
Idő-
tart
am
(per
c)
Mód
szer
Mun
kafo
r-m
aK
épzé
si a
nyag
ok, e
szkö
zök
Egy
éb ja
vasl
atok
1.Ve
zérlé
si sz
erke
zete
k:
elág
azás
ok, c
iklu
sok
meg
figye
lés
Vid
eó, p
reze
ntác
ió n
yom
on
köve
tése
30
Taná
ri el
ő-ad
ásFr
ontá
lis o
sz-
tály
mun
kaTa
nári
prez
entá
ció
az e
lága
záso
k és
ci
klus
ok fa
jtáiró
l, he
lyes
szin
takt
iká-
jukr
ól
Am
enny
iben
a g
épen
ren-
delk
ezés
re á
ll a
tele
píte
tt V
isua
l C#
2008
, a ta
nár b
e is
m
utat
hat k
ódré
szle
teke
t vag
y m
inta
prog
ram
okat
műk
ödés
kö
zben
is.
2.Is
mét
lő k
érdé
sek
az
elág
azás
okró
l és c
iklu
-so
król
Előt
te h
allo
tt in
form
áció
fe
lidéz
ése
A ta
nulá
si fo
lyam
at e
llenő
rzé-
se te
sztk
érdé
sek
segí
tség
ével
10
Tesz
t-fel
-ad
atso
r öná
l-ló
kitö
ltése
Egyé
ni
mun
kaTe
sztfe
lada
tsor
a 4
.1. sz
ámú
mel
lékl
et-
ben
A te
sztfe
lada
tok
kitö
ltése
köz
-be
n a
prez
entá
ció
ne le
gyen
lá
that
ó.
3.A
hel
yes v
álas
zok
meg
-be
szél
ése
Kom
mun
ikác
ióö
nelle
nőrz
ésH
ibás
vál
aszo
k ko
rrig
álás
a
5 M
egbe
szél
ésFr
ontá
lis o
sz-
tály
mun
kaH
elye
s meg
oldá
sok
a 4.
2. sz
ámú
mel
-lé
klet
ben
Azt
is b
eszé
ljük
meg
, hog
y a
hely
tele
n vá
lasz
ok m
iért
nem
jó
k!4.
Elág
azás
ok, c
iklu
sok
gyak
orlá
saH
elye
s szi
ntak
tika
elsa
játít
ása
Dön
tési
hel
yzet
meg
való
sítás
a pr
ogra
mba
nPr
ogra
mré
szle
tek
ism
étlé
se,
az is
mét
elt v
égre
hajtá
s szü
k-sé
gess
égén
ek fe
lism
erés
eBl
okks
truk
túra
átte
kint
ése
Öss
zete
tt fe
ltéte
lek
meg
foga
l-m
azás
a
30
Irán
yíto
tt te
véke
nysé
gEg
yéni
m
unka
4.1.
–4.3
. fel
adat
a ta
nuló
i jeg
yzet
ben:
lé
pésr
ől lé
pésr
e el
kész
ítünk
hár
om
olya
n pr
ogra
mot
, am
elye
k a
külö
nböz
ő típ
usú
elág
azás
okat
gya
koro
ltatjá
k, é
s kö
zben
átis
mét
lik a
gra
fikus
kom
po-
nens
ek h
aszn
álat
át.
4.4.
fela
dat a
tanu
lói j
egyz
etbe
n: g
ya-
korla
ti fe
lada
tot o
ldun
k m
eg a
z eg
yes
cikl
usfa
jták
hasz
nála
tára
, ism
ét c
sak
grafi
kus k
ompo
nens
ek fe
lhas
znál
ásá-
val.
Moz
gass
uk a
form
ot a
kép
-er
nyőn
for é
s whi
le c
iklu
sok
segí
tség
ével
.
5.El
emek
szét
válo
gatá
sa,
List
Box
ism
étlé
seEd
digi
ism
eret
ek ö
ssze
gzés
eB
onyo
lulta
bb p
rogr
am k
észí
-té
se, e
lága
zás-
cikl
us e
gym
ás-
ba á
gyaz
ása
Ren
dsze
rezé
sM
atem
atik
ai fo
galo
m p
rogr
a-m
ozás
i im
plem
entá
lása
20
Irán
yíto
tt te
véke
nysé
gEg
yéni
m
unka
4.5.
fela
dat a
tanu
lói j
egyz
etbe
n:
ism
étel
t ada
tbev
itelle
l (ci
klus
ban)
ké
rjünk
be
a fe
lhas
znál
ótól
szám
okat
, és
vál
ogas
suk
őket
szét
pár
osak
ra é
s pá
ratla
nokr
a!
Ehhe
z sz
üksé
günk
lesz
a
Vis
ual B
asic
ben
hasz
nála
tos
Inpu
tBox
függ
vény
re
30 BEVEZETÉS A VISUAL C# 2008 HASZNÁLATÁBA • TANÁrI KÉZIKöNyV 11. ÉVFoLyAm
A T
AN
ÍTÁ
SI E
GY
SÉG
– T
ÉMA
KÖ
R C
ÍME:
Vez
érlé
si sz
erke
zete
k: e
lága
záso
k, c
iklu
sok
Sor-
szám
Tém
a / A
ltém
aK
észs
ég /
képe
sség
Idő-
tart
am
(per
c)
Mód
szer
Mun
kafo
r-m
aK
épzé
si a
nyag
ok, e
szkö
zök
Egy
éb ja
vasl
atok
6.Sa
ját f
elad
atok
meg
ol-
dása
cik
lusr
a, e
lága
-zá
sra
Szin
takt
ikai
szab
ályo
k kö
ve-
tése
Elág
azás
ok, c
iklu
sok
gyak
or-
lása
Szöv
eges
fela
dato
k m
egol
dása
pr
ogra
moz
ási e
szkö
zökk
el
30
Öná
lló
man
uális
te
véke
nysé
g
Egyé
ni
mun
kaTo
vább
i fel
adat
ok a
tanu
lói j
egyz
etbe
n:
az e
ddig
i ism
eret
ekre
tám
aszk
odva
kel
l a
feje
zetb
en ta
lálh
ató
prog
ram
okho
z ha
sonl
ókat
írni
.
A fe
lada
tokh
oz m
ellé
kelt
min
tam
egol
dáso
k kó
dja
a ta
náro
k sz
ámár
a ho
zzáf
érhe
-tő
, a d
iáko
k cs
ak a
futta
that
ó pr
ogra
mok
at (E
XE)
kap
ják
meg
!7.
Az
ered
mén
yek
ösz-
szeg
zése
Kom
mun
ikác
ióö
nelle
nőrz
ésEr
edm
énye
k ös
szev
etés
e
10
Meg
besz
élés
Fron
tális
osz
-tá
lym
unka
A fe
lada
tok
lehe
tség
es m
egol
dása
it be
szél
jük
meg
(am
ire ju
t idő
).H
ázi f
elad
at: a
tanu
lói j
egyz
et
4.8.
fela
data
.
PETRIK TISZK TÁMOP-2.2.3-07/1-2F-2008-0011 31
4.1. SZÁMÚ MELLÉKLET – fELADATOK
4.1. Mikor kell elágazást használnunk a programban? Milyen fajtái vannak?
4.2. Melyik fogalomhoz melyik kulcsszó tartozik?Írd be az üres oszlopba a definícióhoz tartozó válasz betűjelét!
1. Egy- és kétirányú elágazás a) while
2. Többirányú elágazás b) if-else
3. Számláló ciklus c) switch-case
4. Elöltesztelő ciklus d) do-while
5. Hátultesztelő ciklus e) for
4.3. Írdátazalábbiforciklustwhileciklusra!
int fakt = 1;
for (i=2; i<=10; i++)
{
fakt *= i;
}
4.4. Miazalapvetőkülönbségazelöl-ésahátultesztelőciklusközött?
32 BEVEZETÉS A VISUAL C# 2008 HASZNÁLATÁBA • TANÁrI KÉZIKöNyV 11. ÉVFoLyAm
4.5. Helyesek-eakövetkezőprogramrészletek?Hanem,miértnem?Töltsd ki a táblázatot!
Programrészlet Helyes / Helytelen?while (i<10)
{
listBox1.Items.Add(i.ToString());
}
if (x>0)
{
label1.Text=”pozitív”;
}
switch (x)
{
case 1: label1.Text=”egy”;
case 2: label1.Text=”kettő”;
}
switch (x)
{
case 1:
case 2:
case 3: label1.Text=”három
vagy annál kisebb”;
}
for (i=0; i<0; i++)
{
ossz += x;
}
PETRIK TISZK TÁMOP-2.2.3-07/1-2F-2008-0011 33
4.2. SZÁMÚ MELLÉKLET – MEGOLDÁSOK
4.1. Mikor kell elágazást használnunk a programban? Milyen fajtái vannak?Amikor a programban döntési helyzet alakul ki, azaz bizonyos feltétel(ek) teljesülésétől függően mást kell csinálnunk, mint amikor azok nem teljesülnek.Fajtái:
egy-, illetve kétirányú elágazás –többirányú elágazás –
4.2. Melyik fogalomhoz melyik kulcsszó tartozik?Írd be az üres oszlopba a definícióhoz tartozó válasz betűjelét!
1. Egy- és kétirányú elágazás b) a) while
2. Többirányú elágazás c) b) if-else
3. Számláló ciklus e) c) switch-case
4. Elöltesztelő ciklus a) d) do-while
5. Hátultesztelő ciklus d) e) for
4.3. Írdátazalábbiforciklustwhileciklusra!
int fakt = 1;
for (i=2; i<=10; i++)
{
fakt *= i;
}
int fakt = 1;
i=2;
while (i<=10)
{
fakt *= i;
i++;
}
4.4. Miazalapvetőkülönbségazelöl-ésahátultesztelőciklusközött?Az, hogy az elöltesztelő ciklus nem biztos, hogy akár egyszer is lefut (például ha a feltétel már kez-detben nem teljesül), míg a hátultesztelő biztosan lefut legalább egyszer.
34 BEVEZETÉS A VISUAL C# 2008 HASZNÁLATÁBA • TANÁrI KÉZIKöNyV 11. ÉVFoLyAm
4.5. Helyesek-eakövetkezőprogramrészletek?Hanem,miértnem?Töltsd ki a táblázatot!
Programrészlet Helyes / Helytelen?while (i<10)
{
listBox1.Items.Add(i.ToString());
}
Helytelen, mert a ciklusmag nem változtatja a ciklusváltozó értékét, ezért végtelen ciklus az eredmény.
if (x>0)
{
label1.Text=”pozitív”;
}
Helyes.
switch (x)
{
case 1: label1.Text=”egy”;
case 2: label1.Text=”kettő”;
}
Helytelen, mert a case ágak végéről hiányzik a break utasítás.
switch (x)
{
case 1:
case 2:
case 3: label1.Text=”három
vagy annál kisebb”;
}
Helyes.
for (i=0; i<0; i++)
{
ossz += x;
}
Helytelen, mert a ciklus egyszer sem fut le, hi-szen az i kezdőértéke 0, és a ciklus addig menne, amíg az i kisebb mint 0, ami már kezdetben sem teljesül.
PETRIK TISZK TÁMOP-2.2.3-07/1-2F-2008-0011 35
TANíTÁSI EgySÉg ÁLTALÁNoS BEmUTATÁSA
CÍM: ÖSSZETETT ADATTÍPuSOK: REKORD, TÖMb, fELTÖLTÉS SZÖVEGfÁJLbÓL
Sorszám: 5.Évfolyam: 11. évfolyam
Időtartam: 3x45 perc A tanítási egység típusaTanóra (45 perc) Gyakorlat (2x45 perc)
Célok Az összetett adattípus jelentőségének felismerése.Ugyanolyan típusú elemek tömbbe szervezési lehetőségeinek felfedezése.Egydimenziós tömb típusú változó deklarálása, helyfoglalás szükségességé-nek megértése, a tömb adatokkal való feltöltése.A rekord (struktúra) típus deklarálási szintaktikájának megismerése.Tömb és rekord kombinálásának elsajátítása.Rekordokból felépített tömb feltöltése szekvenciális szövegfájlból.Eredmények kiírása szövegfájlba.
Követelmények Ismerje fel az egyszerű adattípusok hiányosságait, az összetett típusok szük-ségességét. Tudjon egyszerű típusból tömböt készíteni, adott számú elemnek helyet foglalni, a tömböt értékekkel feltölteni, ezeket az értékeket ciklussal kiíratni.Legyen képes összetett típust (rekord) létrehozni, ilyen típusú változót dekla-rálni, és a mezőit egyesével adatokkal feltölteni.Legyen képes rekord típusú elemekből tömböt felépíteni, adott számú elemnek helyet foglalni, és az ilyen típusú változót szekvenciális szövegfájlból feltölte-ni. Legyen képes az eredményeket szöveges fájlba kiírni.
Informatikai, oktatástechnikai eszközök
Számítógép: 1 db. (minimum 1 GHz-es processzorral, és 512 mB memóriá-val, ajánlott: 2 GHz-es processzor, 1 GB memóriával)Projektor, vetítővászonEgyéb, pl. speciális szoftver: Visual C# Express 2008, szélessávú Internet-kapcsolat (a Súgóhoz).
források, javasolt tananyagok, kiad-ványok, internetes honlapok
Tanári prezentáció: AINFO11_TP5.pptMintaprogramok: AINFO11_Mintaprogramok5.zip
Visual Studio 2008 Express Editionshttp://www.microsoft.com/express/ (2009. 10. 24.)Illés Zoltán (2008): Programozás C# nyelven (2008-as változat), Budapest:
Jedlik oktatási Stúdió
36 BEVEZETÉS A VISUAL C# 2008 HASZNÁLATÁBA • TANÁrI KÉZIKöNyV 11. ÉVFoLyAm
A T
AN
ÍTÁ
SI E
GY
SÉG
– T
ÉMA
KÖ
R R
ÉSZ
LET
ES
LEÍ
RÁ
SA
A T
AN
ÍTÁ
SI E
GY
SÉG
– T
ÉMA
KÖ
R C
ÍME:
Öss
zete
tt a
datt
ípus
ok: r
ekor
d, tö
mb,
feltö
ltés s
zöve
gfáj
lból
Sor-
szám
Tém
a / A
ltém
aK
észs
ég /
képe
sség
Idő-
tart
am
(per
c)
Mód
szer
Mun
kafo
rma
Kép
zési
any
agok
, esz
közö
kE
gyéb
java
slat
ok
1.Ö
ssze
tett
adat
típus
ok:
reko
rd, t
ömb,
feltö
ltés
szöv
egfá
jlból
meg
figye
lés
Vid
eó, p
reze
ntác
ió n
yom
on
köve
tése
30
Taná
ri el
ő-ad
ásFr
ontá
lis o
sz-
tály
mun
kaTa
nári
prez
entá
ció
a tö
mbö
k és
re-
kord
ok d
ekla
ráci
ójár
ól, h
aszn
álat
uk
hely
es sz
inta
ktik
ájár
ól, v
alam
int a
sz
öveg
fájlb
ól fe
ltölté
sről
és a
z ab
ba
írásr
ól.
Am
enny
iben
a g
épen
ren-
delk
ezés
re á
ll a
tele
píte
tt V
isua
l C#
2008
, a ta
nár b
e is
m
utat
hat k
ódré
szle
teke
t vag
y m
inta
prog
ram
okat
műk
ödés
kö
zben
is.
2.Is
mét
lő k
érdé
sek
a tö
mbö
kről
, rek
ordo
król
, sz
öveg
fájlo
król
Előt
te h
allo
tt in
form
áció
fe
lidéz
ése
A ta
nulá
si fo
lyam
at e
llenő
rzé-
se te
sztk
érdé
sek
segí
tség
ével
10
Tesz
t-fel
-ad
atso
r öná
l-ló
kitö
ltése
Egyé
ni
mun
kaTe
sztfe
lada
tsor
az
5.1.
szám
ú m
el-
lékl
etbe
nA
tesz
tfela
dato
k ki
tölté
se k
öz-
ben
a pr
ezen
táci
ó ne
legy
en
láth
ató.
3.A
hel
yes v
álas
zok
meg
-be
szél
ése
Kom
mun
ikác
ióö
nelle
nőrz
ésH
ibás
vál
aszo
k ko
rrig
álás
a
5 M
egbe
szél
ésFr
ontá
lis o
sz-
tály
mun
kaH
elye
s meg
oldá
sok
az 5
.2. s
zám
ú m
ellé
klet
ben
Azt
is b
eszé
ljük
meg
, hog
y a
hely
tele
n vá
lasz
ok m
iért
nem
jó
k!4.
Szöv
egfá
jlok
keze
lése
, ad
atok
beo
lvas
ása
és
fájlb
a írá
sa
Perif
ériá
n tá
rolt
adat
ok
elér
ése
Írás
i műv
elet
kül
ső p
erifé
riára
Fájlb
an ta
lálh
ató
és m
emór
iá-
ban
levő
típu
sok
meg
fele
lteté
-se
egy
más
nak
Ada
tabs
ztra
kció
20
Irán
yíto
tt te
véke
nysé
gEg
yéni
m
unka
5.1.
fela
dat a
tanu
lói j
egyz
etbe
n:
az e
lőző
alk
alom
mal
elk
észí
tett
szét
válo
gatá
s fel
adat
ot ír
juk
át ú
gy,
hogy
szöv
egfá
jlból
olv
assa
be
a sz
ámok
at, é
s oda
is ír
ja k
i őke
t! A
pá
ros s
zám
okat
írju
k ki
egy
más
ik
szöv
egfá
jlba!
Has
znál
juk
fel a
múl
tkor
i fe
lada
tot,
írju
k át
azt
!
5.Tö
mbö
k, re
kord
ok g
ya-
korlá
saH
elye
s szi
ntak
tika
elsa
játít
ása
Öss
zete
tt ad
attíp
us h
aszn
ála-
tána
k el
sajá
títás
aSt
rukt
úráb
an g
ondo
lkod
ás
szük
sége
sség
ének
felis
mer
ése
Kül
önfé
le a
dato
k ös
szef
ogás
a,
egyb
en k
ezel
ése
30
Irán
yíto
tt te
véke
nysé
gEg
yéni
m
unka
5.2.
fela
dat a
tanu
lói j
egyz
etbe
n:
oldj
unk
meg
egy
fela
dato
t, am
ely-
hez
létre
kel
l hoz
ni e
gy st
rukt
úrák
-bó
l álló
töm
böt,
azt f
el k
ell t
ölte
ni
szöv
egfá
jlból
, és a
tart
alm
át k
i kel
l ír
ni e
gy L
istB
oxba
.
A m
ásod
ik ta
nítá
si e
gysé
gben
(W
indo
ws F
orm
s alk
alm
azás
ké
szíté
se) m
egte
rvez
ett p
rog-
ram
ot h
aszn
álju
k fe
l.Ez
már
bev
ezet
és a
köv
etke
ző
tém
ához
, aza
z a
prog
ram
ozás
i té
tele
khez
.
PETRIK TISZK TÁMOP-2.2.3-07/1-2F-2008-0011 37
A T
AN
ÍTÁ
SI E
GY
SÉG
– T
ÉMA
KÖ
R C
ÍME:
Öss
zete
tt a
datt
ípus
ok: r
ekor
d, tö
mb,
feltö
ltés s
zöve
gfáj
lból
Sor-
szám
Tém
a / A
ltém
aK
észs
ég /
képe
sség
Idő-
tart
am
(per
c)
Mód
szer
Mun
kafo
rma
Kép
zési
any
agok
, esz
közö
kE
gyéb
java
slat
ok
6.Sa
ját f
elad
atok
meg
oldá
-sa
töm
bre,
reko
rdok
ra,
fájlk
ezel
ésre
Szin
takt
ikai
szab
ályo
k kö
ve-
tése
Töm
bök,
reko
rdok
gya
korlá
saSz
öveg
es fe
lada
tok
meg
oldá
sa
prog
ram
ozás
i esz
közö
kkel
30
Öná
lló
man
uális
te
véke
nysé
g
Egyé
ni
mun
kaTo
vább
i fel
adat
ok a
tanu
lói j
egyz
et-
ben:
egy
egy
szer
ű és
egy
öss
zete
tt ad
attíp
ust h
aszn
áló
fela
dat s
egíts
é-gé
vel l
ehet
beg
yako
roln
i a tö
mbö
k,
stru
ktúr
ák, s
zöve
gfáj
lok
hasz
nála
-tá
t.
A fe
lada
tokh
oz m
ellé
kelt
min
tam
egol
dáso
k kó
dja
a ta
náro
k sz
ámár
a ho
zzáf
érhe
-tő
, a d
iáko
k cs
ak a
futta
that
ó pr
ogra
mok
at (E
XE)
kap
ják
meg
!7.
Az
ered
mén
yek
össz
eg-
zése
Kom
mun
ikác
ióö
nelle
nőrz
ésEr
edm
énye
k ös
szev
etés
e
10
Meg
besz
élés
Fron
tális
osz
-tá
lym
unka
A fe
lada
tok
lehe
tség
es m
egol
dása
it be
szél
jük
meg
(am
ire ju
t idő
).H
ázi f
elad
at: a
tanu
lói j
egyz
et
5.5.
fela
data
.
38 BEVEZETÉS A VISUAL C# 2008 HASZNÁLATÁBA • TANÁrI KÉZIKöNyV 11. ÉVFoLyAm
5.1. SZÁMÚ MELLÉKLET – fELADATOK
5.1. Melyekegyszövegfájlbóltörténőbeolvasáslépései?Írd le az üres oszlopba az egyes tevékenységek sorszámát abban a sorrendben, ahogy követik egymást!
a) Fájl létezésének ellenőrzése
b) Fájl bezárása
c) Sorok beolvasása (ciklusban)
d) Olvasás, amíg nincs vége a fájlnak
e) A „using” lista kibővítése
f) Fájltípus deklarációja és a fájl megnyitása
5.2. Mikor kell tömböt használnunk a programunkban?
5.3. Adottakövetkezőstruktúra.Írdleazokatazutasításokat,amelyekastruktúrafelhaszná-lásávalegylegfeljebb200eleműtömböthoznaklétre!
struct Rekord
{
public string orszag;
public int terulet;
}
5.4. Melyik fogalomhoz melyik kulcsszó tartozik?Írd be az üres oszlopba a definícióhoz tartozó válasz betűjelét!
1. Olvasásra megnyitható fájl típusa a) f.Close()
2. Fájl létezésének ellenőrzése b) StreamReader
3. Fájl végének ellenőrzése c) f.ReadLine()
4. Megnyitás olvasásra d) f.EndOfStream
5. Sor beolvasása e) File.OpenText
6. Fájl bezárása f) File.Exists
PETRIK TISZK TÁMOP-2.2.3-07/1-2F-2008-0011 39
5.5. Helyesek-eakövetkezőprogramrészletek?Hanem,miértnem?Töltsd ki a táblázatot!
Programrészlet Helyes / Helytelen?struct Rek
{
int x;
}
v.orszag[i] = ”Malajzia”;
int[] v = new int[100];
v(2) = 24;
label1.Text = v[i].ToString();
while ( !f.EndOfStream )
{
string sor = f.ReadLine();
f.Close();
}
40 BEVEZETÉS A VISUAL C# 2008 HASZNÁLATÁBA • TANÁrI KÉZIKöNyV 11. ÉVFoLyAm
5.2. SZÁMÚ MELLÉKLET – MEGOLDÁSOK
5.1. Melyekegyszövegfájlbóltörténőbeolvasáslépései?Írd le az üres oszlopba az egyes tevékenységek sorszámát abban a sorrendben, ahogy követik egymást!
a) Fájl létezésének ellenőrzése 2.b) Fájl bezárása 6.c) Sorok beolvasása (ciklusban) 5.d) Olvasás, amíg nincs vége a fájlnak 4.e) A „using” lista kibővítése 1.f) Fájltípus deklarációja és a fájl megnyitása 3.
5.2. Mikor kell tömböt használnunk a programunkban?Több, azonos típusú adat tárolására.
5.3. Adottakövetkezőstruktúra.Írdleazokatazutasításokat,amelyekastruktúrafelhaszná-lásávalegylegfeljebb200eleműtömböthoznaklétre!
struct Rekord
{
public string orszag;
public int terulet;
}
const int MAX=200;
Rekord[] v = new Rekord[MAX];
5.4. Melyik fogalomhoz melyik kulcsszó tartozik?Írd be az üres oszlopba a definícióhoz tartozó válasz betűjelét!
1. Olvasásra megnyitható fájl típusa b) a) f.Close()
2. Fájl létezésének ellenőrzése f) b) StreamReader
3. Fájl végének ellenőrzése d) c) f.ReadLine()
4. Megnyitás olvasásra e) d) f.EndOfStream
5. Sorok beolvasása c) e) File.OpenText
6. Fájl bezárása a) f) File.Exists
PETRIK TISZK TÁMOP-2.2.3-07/1-2F-2008-0011 41
5.5. Helyesek-eakövetkezőprogramrészletek?Hanem,miértnem?Töltsd ki a táblázatot!
Programrészlet Helyes / Helytelen?struct Rek
{
int x;
}
Nem helyes, mert ha nem használjuk a public kulcsszót, akkor a mező nem lesz kívülről elérhe-tő.
v.orszag[i] = ”Malajzia”; Nem helyes, mert így nem a vektor i. elemének or-szág mezőjét érjük el.
int[] v = new int[100]; Helyes.v(2) = 24; Nem helyes, mert indexeléshez a [] használható.
label1.Text = v[i].ToString(); Helyes, amennyiben egy ciklusban van ez az uta-sítás.
while ( !f.EndOfStream )
{
string sor = f.ReadLine();
f.Close();
}
Helytelen, mert a fájl bezárása a ciklusban van, ami a következő feltételvizsgálatnál hibát eredményez.
42 BEVEZETÉS A VISUAL C# 2008 HASZNÁLATÁBA • TANÁrI KÉZIKöNyV 11. ÉVFoLyAm
TANíTÁSI EgySÉg ÁLTALÁNoS BEmUTATÁSA
CÍM:AlAPVETőProGrAMozáSITéTElEKMEGVA-LÓSÍTÁSA
Sorszám: 6.Évfolyam: 11. évfolyam
Időtartam: 3x45 perc A tanítási egység típusaTanóra (45 perc) Gyakorlat (2x45 perc)
Célok Típusfeladatok hasonló megoldásának felismerése.Tömb elemeinek összeadása, átlagszámítás az összegzés programozási téte-lével.Valamilyen feltételnek megfelelő elemek számlálása a megszámlálás tétellel.Legnagyobb és legkisebb elem kiválasztása maximum- és minimum kivá lasz-tással.Adott, illetve adott tulajdonságú elem megkeresése lineáris kereséssel.
Követelmények Legyen képes felismerni, hogy számos feladat megoldása hasonló, ezért ad-ható rájuk általános megoldás, amelyet csak alkalmazni kell a konkrét feladat megoldására.Legyen képes különböző struktúrájú adatokon összegzést, átlagszámítást vé-gezni.Legyen képes adott tulajdonságú elemeket megszámolni egy sorozatban.Legyen képes egy sorozat legkisebb, illetve legnagyobb elemének kiválasz-tására. Legyen tisztában azzal, hogy mit jelent a legkisebb-legnagyobb elem számok, illetve szövegek esetén.Legyen képes egy sorozatban adott elemet, illetve egy feltételnek megfelelő tagot megkeresni. Közölje azt is, ha ilyen nem található.
Informatikai, oktatástechnikai eszközök
Számítógép: 1 db. (minimum 1 GHz-es processzorral, és 512 mB memóriá-val, ajánlott: 2 GHz-es processzor, 1 GB memóriával)Projektor, vetítővászonEgyéb, pl. speciális szoftver: Visual C# Express 2008, szélessávú Internet-kapcsolat (a Súgóhoz).
források, javasolt tananyagok, kiad-ványok, internetes honlapok
Tanári prezentáció: AINFO11_TP6.pptMintaprogramok: AINFO11_Mintaprogramok6.zip
Visual Studio 2008 Express Editionshttp://www.microsoft.com/express/ (2009. 10. 24.)Illés Zoltán (2008): Programozás C# nyelven (2008-as változat), Budapest:
Jedlik oktatási Stúdió
PETRIK TISZK TÁMOP-2.2.3-07/1-2F-2008-0011 43
A T
AN
ÍTÁ
SI E
GY
SÉG
– T
ÉMA
KÖ
R R
ÉSZ
LET
ES
LEÍ
RÁ
SA
A T
AN
ÍTÁ
SI E
GY
SÉG
– T
ÉMA
KÖ
R C
ÍME:
Alapvetőprogramozásitételekmegvalósítása
Sor-
szám
Tém
a / A
ltém
aK
észs
ég /
képe
sség
Idő-
tart
am
(per
c)
Mód
szer
Mun
kafo
r-m
aK
épzé
si a
nyag
ok, e
szkö
zök
Egy
éb ja
vasl
atok
1.A
lapv
ető
prog
ram
ozás
i té
tele
k m
egva
lósít
ása
meg
figye
lés
Vid
eó, p
reze
ntác
ió n
yom
on
köve
tése
30
Taná
ri el
őadá
sFr
ontá
lis o
sz-
tály
mun
kaTa
nári
prez
entá
ció
az a
lapv
ető
prog
ram
ozás
i tét
elek
ről (
össz
eg-
zés,
meg
szám
lálá
s, m
inim
um- é
s m
axim
umki
vála
sztá
s, lin
eáris
ker
esés
), ez
ek a
lkal
maz
ásár
ól k
onkr
ét fe
lada
tok
meg
oldá
sára
.
Am
enny
iben
a g
épen
re
ndel
kezé
sre
áll a
tele
píte
tt V
isua
l C#
2008
, a ta
nár b
e is
mut
atha
t kód
rész
lete
ket
vagy
min
tapr
ogra
mok
at
műk
ödés
köz
ben
is.
2.Is
mét
lő k
érdé
sek
a pr
og-
ram
ozás
i tét
elek
ről
Előt
te h
allo
tt in
form
áció
fe
lidéz
ése
A ta
nulá
si fo
lyam
at e
llenő
rzé-
se te
sztk
érdé
sek
segí
tség
ével
10
Tesz
t-fel
-ad
atso
r ön
álló
ki
tölté
se
Egyé
ni
mun
kaTe
sztfe
lada
tsor
a 6
.1. sz
ámú
mel
lékl
et-
ben
A te
sztfe
lada
tok
kitö
ltése
kö
zben
a p
reze
ntác
ió n
e le
gyen
láth
ató.
3.A
hel
yes v
álas
zok
meg
-be
szél
ése
Kom
mun
ikác
ióö
nelle
nőrz
ésH
ibás
vál
aszo
k ko
rrig
álás
a
5 M
egbe
szé-
lés
Fron
tális
osz
-tá
lym
unka
Hel
yes m
egol
dáso
k a
6.2.
szám
ú m
el-
lékl
etbe
nA
zt is
bes
zéljü
k m
eg, h
ogy
a he
lyte
len
vála
szok
mié
rt ne
m jó
k!4.
Prog
ram
ozás
i tét
elek
sz
ám tí
pusú
ada
toko
nA
data
bszt
rakc
ióV
issz
avez
etés
Alg
oritm
us a
lkal
maz
ása
konk
rét f
elad
atra
Prog
ram
ozás
i tét
elek
: ös
szeg
zés,
meg
szám
lálá
s, m
inim
umki
vála
sztá
s, lin
eáris
ke
resé
s
40
Irán
yíto
tt te
véke
nysé
gEg
yéni
m
unka
6.1.
fela
dat a
tanu
lói j
egyz
etbe
n: a
z el
ő-ző
alk
alom
mal
elk
észí
tett
szét
válo
gatá
s fe
lada
tot í
rjuk
tová
bb. A
z ug
yani
s már
ta
rtal
maz
egy
egé
sz tí
pusú
ért
ékek
et
tart
alm
azó
töm
böt,
feltö
ltve
adat
okka
l, pr
óbál
juk
ki ra
jta a
z el
emi p
rogr
amoz
á-si
téte
leke
t!
Has
znál
juk
fel a
múl
tkor
i fe
lada
tot,
írju
k át
azt
!
5.Sa
ját f
elad
at k
iegé
szíté
se
prog
ram
ozás
i tét
elek
kel
Szin
takt
ikai
szab
ályo
k kö
ve-
tése
Prog
ram
ozás
i tét
elek
gya
kor-
lása
Impl
emen
tálá
s a ta
nult
vezé
r-lé
si sz
erke
zete
k se
gíts
égév
elSz
öveg
es fe
lada
tok
meg
oldá
sa
prog
ram
ozás
i esz
közö
kkel
40
Öná
lló
man
uális
te
véke
nysé
g
Egyé
ni
mun
ka6.
2. fe
lada
t a ta
nuló
i jeg
yzet
ben:
a
más
odik
taní
tási
egy
ségb
en m
egte
rve-
zett
és a
z el
őző
feje
zetb
en k
iegé
szíte
tt pr
ogra
mot
kel
l tov
ább
írni
öná
llóan
a
prog
ram
ozás
i tét
elek
és a
jegy
zetb
en
meg
adot
t seg
ítség
ek fe
lhas
znál
ásáv
al.
A fe
lada
thoz
mel
léke
lt m
in-
tam
egol
dáso
k kó
dja
a ta
ná-
rok
szám
ára
hozz
áfér
hető
, a
diák
ok c
sak
a fu
ttath
ató
prog
ram
okat
(EX
E) k
apjá
k m
eg!
6.A
z er
edm
énye
k ös
szeg
-zé
seK
omm
unik
áció
öne
llenő
rzés
Ered
mén
yek
össz
evet
ése
10
Meg
besz
é-lé
sFr
ontá
lis o
sz-
tály
mun
kaA
fela
dato
k le
hets
éges
meg
oldá
sait
besz
éljü
k m
eg (a
mire
jut i
dő).
Ház
i fel
adat
: a ta
nuló
i jeg
y-ze
t 6.3
. fel
adat
a.
44 BEVEZETÉS A VISUAL C# 2008 HASZNÁLATÁBA • TANÁrI KÉZIKöNyV 11. ÉVFoLyAm
6.1. SZÁMÚ MELLÉKLET – fELADATOK
6.1. Mit nevezünk programozási tételnek?
6.2. Melyik feladathoz melyik programozási tétel tartozik?Írd be az üres oszlopba a definícióhoz tartozó válasz betűjelét!
1. Válasszuk ki a vektor legnagyobb elemét! a) Összegzés
2. Számoljuk meg, hogy a vektorban hány darab, adott tulajdonságú elem található! b) Lineáris keresés
3. Számítsuk ki a vektor elemeinek összegét! c) Megszámlálás
4. Keressük meg a vektor első adott tulajdonságú elemét! d) Maximumkiválasztás
6.3. Adottakövetkezőstruktúra,amelyatömbünkbázistípusa.Írdátaminimumkiválasztástmaximumkiválasztásra,úgy,hogyalegnagyobbterületűországotadjameg!
struct Rekord
{
public string orszag;
public int terulet;
}
min := 1
ciklus i:=2-től n-ig
ha v[i]<v[min] akkor
min := i
ciklus vége.
6.4. Írdlealineáriskeresésfeladatát,ésaprogramozásitételalgoritmusát!
PETRIK TISZK TÁMOP-2.2.3-07/1-2F-2008-0011 45
6.5. Miahibaakövetkezőprogramozásitételekkódjában?(Többislehet.)Töltsd ki a táblázatot!
Programrészlet Hiba (hibák)for (int i=0; i<n; i++)
{ v[i] += ossz; }
for (int i=0; i<n; i++)
{
int db = 0;
if (v[i]%2 == 0)
{ db++; }
}
int min = 0;
for (int i=1; i<n; i--)
{
if (v[i]<v[min])
{ min = v[i]; }
}
int i = -1;
while (i<n)
{
i++;
}
if (v[i]%2) { l = true; }
46 BEVEZETÉS A VISUAL C# 2008 HASZNÁLATÁBA • TANÁrI KÉZIKöNyV 11. ÉVFoLyAm
6.2. SZÁMÚ MELLÉKLET – MEGOLDÁSOK
6.1. Mit nevezünk programozási tételnek?Vannak olyan típusfeladatok, amelyeket igen hasonlóan kell megoldani. Ezen feladatok megoldására általános algoritmusokat adunk, amelyeket programozási tételeknek nevezünk.
6.2. Melyik feladathoz melyik programozási tétel tartozik?Írd be az üres oszlopba a definícióhoz tartozó válasz betűjelét!
1. Válasszuk ki a vektor legnagyobb elemét! d) a) Összegzés
2. Számoljuk meg, hogy a vektorban hány darab, adott tulajdonságú elem található! c) b) Lineáris keresés
3. Számítsuk ki a vektor elemeinek összegét! a) c) Megszámlálás
4. Keressük meg a vektor első adott tulajdonságú elemét! b) d) Maximumkiválasztás
6.3. Adottakövetkezőstruktúra,amelyatömbünkbázistípusa.Írdátaminimumkiválasztástmaximumkiválasztásra,úgy,hogyalegnagyobbterületűországotadjameg!struct Rekord
{
public string orszag;
public int terulet;
}
min := 1
ciklus i:=2-től n-ig
ha v[i]<v[min] akkor
min := i
ciklus vége.
max := 1
ciklus i:=2-től n-ig
ha v[i].terulet>v[max].terulet akkor
max := i
ciklus vége.
6.4. Írdlealineáriskeresésfeladatát,ésaprogramozásitételalgoritmusát!Adott a v[1..n] vektor, amelynek elemein értelmezhető az adott
tulajdonságfüggvény.
Keressük meg a vektor első adott tulajdonságú elemét! Az l logikai
változó legyen igaz, ha sikerült találni ilyen elemet, és ekkor az
i tartalmazza az első adott tulajdonságú elem indexét.
Algoritmus:
i := 1
ciklus amíg i<=n és NEM(v[i] adott tulajdonságú)
i := i+1
ciklus vége.
l := (i<=n)
PETRIK TISZK TÁMOP-2.2.3-07/1-2F-2008-0011 47
6.5. Miahibaakövetkezőprogramozásitételekkódjában?(Többislehet.)Töltsd ki a táblázatot!
Programrészlet Hiba (hibák)for (int i=0; i<n; i++)
{ v[i] += ossz; }Az ossz változó értékét nem nullázzuk, és az értékadás fordítva szerepel.
for (int i=0; i<n; i++)
{
int db = 0;
if (v[i]%2 == 0)
{ db++; }
}
A darab változó értékét nem szabad a ciklusban nul-lázni!
int min = 0;
for (int i=1; i<n; i--)
{
if (v[i]<v[min])
{ min = v[i]; }
}
A ciklusban csökkentjük a ciklusváltozó értékét növelés helyett, és a minimumnak nem az indexet adjuk értékül, hanem a vektor elemét.
int i = -1;
while (i<n)
{
i++;
}
if (v[i]%2) { l = true; }
Az adott tulajdonság teljesülését nem vizsgáljuk a cik-lusfeltételben, ezért a ciklus csak „végigszalad” az inde-xeken. A ciklus utáni elágazás rossz helyen van, és a fel-tétele hibás, mert a maradék értékét nem hasonlítja össze semmivel.
48 BEVEZETÉS A VISUAL C# 2008 HASZNÁLATÁBA • TANÁrI KÉZIKöNyV 11. ÉVFoLyAm
TANíTÁSI EgySÉg ÁLTALÁNoS BEmUTATÁSA
CÍM: HIbÁK, HIbAüZENETEK ÉS KEZELÉSüKSorszám: 7.Évfolyam: 11. évfolyam
Időtartam: 3x45 perc A tanítási egység típusaTanóra (45 perc) Gyakorlat (2x45 perc)
Célok A programozási hibák felosztása szintaktikai és szemantikai hibákra.Szintaktikai hibák azonnali javítása a szerkesztő szolgáltatásainak segítségé-vel.A fordító angol nyelvű hibaüzeneteinek megértése, a hiba helyének lokalizá-lása.Szemantikai hibák felismerése, csoportosítása.A fejlesztőkörnyezet szolgáltatásainak (töréspont, lépésenkénti futtatás, válto-zó-betekintés) használatának elsajátítása konkrét példákon (hibás programok javításán) keresztül.
Követelmények Legyen képes a programozási hibákat szintaktikai és szemantikai hibákra osztani. Legyen képes a szintaktikai hibák nagy részének azonnali javítására a szerkesztő szolgáltatásainak felhasználásával.Legyen képes megérteni a leggyakoribb fordítói üzeneteket, és ismerje fel, hogy a hibajelzés melyik programsorra vonatkozik.Ismerje a szemantikus hibákból adódó legtipikusabb következményeket (a program nem áll le, illetve kivétel dobásával áll le, vagy nem azt csinálja, amit mi szeretnénk). Ismerje a fejlesztői környezet szolgáltatásait, amellyel ezek a hibák kiszűrhetők.
Informatikai, oktatástechnikai eszközök
Számítógép: 1 db. (minimum 1 GHz-es processzorral, és 512 mB memóriá-val, ajánlott: 2 GHz-es processzor, 1 GB memóriával)Projektor, vetítővászonEgyéb, pl. speciális szoftver: Visual C# Express 2008, szélessávú Internet-kapcsolat (a Súgóhoz).
források, javasolt tananyagok, kiad-ványok, internetes honlapok
Tanári prezentáció: AINFO11_TP7.pptVideók: AINFo11_VID7.zipMintaprogramok: AINFO11_Mintaprogramok7.zip
Visual Studio 2008 Express Editionshttp://www.microsoft.com/express/ (2009. 10. 24.)Illés Zoltán (2008): Programozás C# nyelven (2008-as változat), Budapest:
Jedlik oktatási Stúdió
PETRIK TISZK TÁMOP-2.2.3-07/1-2F-2008-0011 49
A T
AN
ÍTÁ
SI E
GY
SÉG
– T
ÉMA
KÖ
R R
ÉSZ
LET
ES
LEÍ
RÁ
SA
A T
AN
ÍTÁ
SI E
GY
SÉG
– T
ÉMA
KÖ
R C
ÍME:
Hib
ák, h
ibaü
zene
tek
és k
ezel
ésük
Sor-
szám
Tém
a / A
ltém
aK
észs
ég /
képe
sség
Idő-
tart
am
(per
c)
Mód
szer
Mun
kafo
r-m
aK
épzé
si a
nyag
ok, e
szkö
zök
Egy
éb ja
vasl
atok
1.H
ibák
, hib
aüze
nete
k és
kez
elés
ükm
egfig
yelé
sV
ideó
, pre
zent
áció
nyo
mon
kö
veté
se
30
Taná
ri el
őadá
sFr
ontá
lis
oszt
álym
un-
ka
Taná
ri pr
ezen
táci
ó az
ala
pvet
ő hi
batí-
puso
król
(szi
ntak
tikai
, sze
man
tikai
), ez
ek k
ezel
ésén
ek le
hető
sége
iről,
a fo
rdító
esz
köze
iről,
és a
legf
onto
sabb
hi
baüz
enet
ekrő
l.
Am
enny
iben
a g
épen
ren-
delk
ezés
re á
ll a
tele
píte
tt V
isua
l C#
2008
, a ta
nár b
e is
m
utat
hat k
ódré
szle
teke
t vag
y m
inta
prog
ram
okat
műk
ödés
kö
zben
is, a
vid
eók
hely
ett
vagy
mel
lett.
2.Is
mét
lő k
érdé
sek
a hi
bákr
ól, h
ibaü
zene
-te
kről
Előt
te h
allo
tt in
form
áció
fe
lidéz
ése
A ta
nulá
si fo
lyam
at e
llenő
rzé-
se te
sztk
érdé
sek
segí
tség
ével
10
Tesz
t-fel
-ad
atso
r ön
álló
ki
tölté
se
Egyé
ni m
un-
kaTe
sztfe
lada
tsor
a 7
.1. sz
ámú
mel
lékl
et-
ben
A te
sztfe
lada
tok
kitö
ltése
köz
-be
n a
prez
entá
ció
ne le
gyen
lá
that
ó.
3.A
hel
yes v
álas
zok
meg
besz
élés
eK
omm
unik
áció
öne
llenő
rzés
Hib
ás v
álas
zok
korr
igál
ása
5 M
egbe
szé-
lés
Fron
tális
os
ztál
ymun
-ka
Hel
yes m
egol
dáso
k a
7.2.
szám
ú m
el-
lékl
etbe
nA
zt is
bes
zéljü
k m
eg, h
ogy
a he
lyte
len
vála
szok
mié
rt ne
m
jók!
4.Sz
inta
ktik
ai h
ibák
ja
vítá
saK
ateg
oriz
álás
Gép
elés
i pon
toss
ág ja
vítá
saA
ngol
nye
lvű
szöv
egér
tés
Hib
a he
lyén
ek lo
kaliz
álás
aEl
igaz
odás
a p
rogr
amkó
dban
20
Irán
yíto
tt te
véke
nysé
gEg
yéni
mun
-ka
7.1. f
elad
at a
tanu
lói j
egyz
etbe
n: e
gy
szin
takt
ikai
hib
áktó
l hem
zseg
ő ki
s pr
ogra
mba
n lé
pésr
ől lé
pésr
e ja
víts
uk k
i a
hibá
kat,
közb
en fi
gyel
jük
és p
róbá
ljuk
meg
jegy
ezni
a fo
rdító
üze
nete
it.
Adj
uk k
i az
előr
e el
kész
ített,
hi
bás k
ódot
a g
yere
kekn
ek!
(A h
elye
s vál
toza
t is m
egta
-lá
lhat
ó, a
mun
kák
elle
nőrz
é-sé
hez.)
5.Sz
eman
tikai
hib
ák
javí
tása
Hib
aker
esés
és -
javí
tás
Nyo
mkö
veté
si te
chni
kák
Ana
lizál
ásA
lgor
itmus
, ille
tve
prog
ram
-kó
d kö
veté
se, „
lejá
tszá
sa”
fejb
en
30
Irán
yíto
tt te
véke
nysé
gEg
yéni
mun
-ka
7.2.
fela
dat a
tanu
lói j
egyz
etbe
n: e
gy
szem
antik
ai h
ibák
tól h
emzs
egő
kis
prog
ram
ban
lépé
sről
lépé
sre
javí
tsuk
ki
a hi
báka
t, kö
zben
figy
eljü
k és
pró
bál-
juk
meg
jegy
ezni
a fo
rdító
üze
nete
it.
Has
znál
juk
a sz
erke
sztő
nyo
mkö
vető
és
hiba
kere
ső e
szkö
zeit!
Adj
uk k
i az
előr
e el
kész
ített,
hi
bás k
ódot
a g
yere
kekn
ek!
(A h
elye
s vál
toza
t is m
egta
-lá
lhat
ó, a
mun
kák
elle
nőrz
é-sé
hez.)
50 BEVEZETÉS A VISUAL C# 2008 HASZNÁLATÁBA • TANÁrI KÉZIKöNyV 11. ÉVFoLyAm
A T
AN
ÍTÁ
SI E
GY
SÉG
– T
ÉMA
KÖ
R C
ÍME:
Hib
ák, h
ibaü
zene
tek
és k
ezel
ésük
Sor-
szám
Tém
a / A
ltém
aK
észs
ég /
képe
sség
Idő-
tart
am
(per
c)
Mód
szer
Mun
kafo
r-m
aK
épzé
si a
nyag
ok, e
szkö
zök
Egy
éb ja
vasl
atok
6.Ö
nálló
hib
aker
esés
Elig
azod
ás a
pro
gram
kódb
anN
yom
köve
tési
tech
niká
k al
kalm
azás
a
30
Öná
lló
man
uális
te
véke
nysé
g
Egyé
ni m
un-
ka7.
3. fe
lada
t a ta
nuló
i jeg
yzet
ben:
az
eddi
giek
alk
alm
azás
a eg
y ol
yan
prog
-ra
mkó
don,
am
ely
vegy
esen
von
ulta
t fe
l min
dkét
hib
atíp
usbó
l, m
elye
ket k
i ke
ll ja
víta
ni. A
pro
gram
úgy
sors
ol v
é-le
tlens
zerű
en ö
t szá
mot
1 é
s 90
közö
tt,
hogy
azo
k kö
zött
ne le
gyen
két
egy
for-
ma
érté
k. E
z m
ajd
a pr
ojek
tfela
dath
oz
is jó
l jön
a g
yere
kekn
ek.
Adj
uk k
i az
előr
e el
kész
ített,
hi
bás k
ódot
a g
yere
kekn
ek!
(A h
elye
s vál
toza
t is m
egta
-lá
lhat
ó, a
mun
kák
elle
nőrz
é-sé
hez.)
7.A
z er
edm
énye
k ös
z-sz
egzé
seK
omm
unik
áció
öne
llenő
rzés
Ered
mén
yek
össz
evet
ése
10
Meg
besz
é-lé
sFr
ontá
lis
oszt
álym
un-
ka
A fe
lada
tok
lehe
tség
es m
egol
dása
it be
szél
jük
meg
(am
ire ju
t idő
).H
ázi f
elad
at: a
tanu
lói j
egyz
et
7.4.
fela
data
. (K
utak
odás
, in
tern
etes
ker
esés
)
A ta
nári
vid
eók
ismer
teté
se:
1. S
zint
aktik
ai h
ibák
és ja
vítá
suk
(AIN
Fo11
_VID
7_01
): a v
ideó
bem
utat
ja, m
ilyen
szin
takt
ikai
hib
ákat
köv
ethe
tünk
el, e
zekr
e a fo
rdító
hog
yan
reag
ál,
mik
épp
lehe
t men
et k
özbe
n ja
víta
ni, m
ik a
legj
elle
mző
bb h
ibaü
zene
tek,
és a
z eg
yes h
ibák
at h
ogya
n tu
djuk
a le
gegy
szer
űbbe
n ja
víta
ni.
2. H
ibak
eres
ési é
s nyo
mkö
veté
si es
zköz
ök (A
INFo
11_V
ID7_
02):
szem
antik
ai h
ibák
javí
tásá
hoz
nyúj
t seg
ítség
et a
vid
eó. m
egm
utat
ja, h
ogya
n le
het a
ne
heze
n fe
lder
íthet
ő hi
báka
t tör
éspo
nt, l
épés
enké
nti f
utta
tás,
illet
ve a
vál
tozó
k ér
téké
be tö
rténő
bet
ekin
tés s
egíts
égév
el g
yors
an, k
önny
en ja
víta
ni.
PETRIK TISZK TÁMOP-2.2.3-07/1-2F-2008-0011 51
7.1. SZÁMÚ MELLÉKLET – fELADATOK
7.1. Egészítsdkiazalábbimondatot!A programozási nyelv szabályainak figyelmen kívül hagyása
..................................................................., míg a hibás kódolás vagy hibás algoritmus használata
............................................................................................................................ hibát eredményez.
7.2. Melyik hibaüzenethez melyik magyarázat tartozik?Írd be az üres oszlopba a definícióhoz tartozó válasz betűjelét!
1. ’karakter’ expected a) Nem lehet automatikusan az egyik típusról a másikra konvertálni.
2.The name ’név’ does not exist in
the current contextb)
Az adott változót úgy akartuk hasz-nálni, hogy nem adtunk neki előtte értéket.
3.Operator ’op’cannot be applied
to operands of type ’típus1’ and
’típus2’c) Az adott helyről a megadott karak-
ter hiányzik.
4.Use of unassigned local variable
’változónév’d)
Valószínűleg elgépelésből adódó hi-bás név nem értelmezhető az adott tartományban.
5.Cannot implicitly convert type
’típus1’ to ’típus2’e) Az adott műveleti jel nem alkal-
mazható az adott típusokra.
7.3. A szintaktikailag hibás programot le lehet fordítani a hibás sorok kihagyásával?Húzd alá a helyes választ!
Igen Nem
52 BEVEZETÉS A VISUAL C# 2008 HASZNÁLATÁBA • TANÁrI KÉZIKöNyV 11. ÉVFoLyAm
7.4. Melyek egy hibás program javításának lépései?Írd le az üres oszlopba az egyes tevékenységek sorszámát abban a sorrendben, ahogy követik egymást!
a) Hiba kijavítása
b) Töréspont beiktatása
c) Lépésenkénti futtatás
d) Lokális változók figyelése
e) Edit and Continue (folytatás újrafordítás nélkül)
7.5. Szintaktikaivagyszemantikaiahibaakövetkezőprogramrészletekkódjában?Írdleaztis,miahiba!Töltsd ki a táblázatot!
Programrészlet Hiba fajtája és leírásafor (int i=0; i<n; i++)
{ ossz += v[i];
for (int i=0; i<n; i++)
{
int db = 0;
if (v[i]%2 == 0){ db++; }
}
itt min = 0;
int i = -1; int n = 0;
while (i<n)
{
if (v[i]%2) { l = true; }
}
int x = 15;
double y = 4.0;
textBox1.Text = x*y;
PETRIK TISZK TÁMOP-2.2.3-07/1-2F-2008-0011 53
7.2. SZÁMÚ MELLÉKLET – MEGOLDÁSOK
7.1. Egészítsdkiazalábbimondatot!A programozási nyelv szabályainak figyelmen kívül hagyása szintaktikai, míg a hibás kódolás vagy hibás algoritmus használata szemantikai hibát eredményez.
7.2. Melyik hibaüzenethez melyik magyarázat tartozik?Írd be az üres oszlopba a definícióhoz tartozó válasz betűjelét!
1. ’karakter’ expected c) a)Nem lehet automatikusan az egyik típusról a másikra konver-tálni.
2.The name ’név’ does not exist in
the current contextd) b)
Az adott változót úgy akartuk használni, hogy nem adtunk neki előtte értéket.
3.Operator ’op’cannot be applied
to operands of type ’típus1’ and
’típus2’e) c) Az adott helyről a megadott ka-
rakter hiányzik.
4.Use of unassigned local variable
’változónév’b) d)
Valószínűleg elgépelésből adódó hibás név nem értelmezhető az adott tartományban.
5.Cannot implicitly convert type
’típus1’ to ’típus2’a) e) Az adott műveleti jel nem alkal-
mazható az adott típusokra.
7.3. A szintaktikailag hibás programot le lehet fordítani?Húzd alá a helyes választ!
Igen Nem
7.4. Melyek egy hibás program javításának lépései?Írd le az üres oszlopba az egyes tevékenységek sorszámát abban a sorrendben, ahogy követik egymást!
a) Hiba kijavítása 4.b) Töréspont beiktatása 1.c) Lépésenkénti futtatás 2.d) Lokális változók figyelése 3.e) Edit and Continue (folytatás újrafordítás nélkül) 5.
54 BEVEZETÉS A VISUAL C# 2008 HASZNÁLATÁBA • TANÁrI KÉZIKöNyV 11. ÉVFoLyAm
7.5. Szintaktikaivagyszemantikaiahibaakövetkezőprogramrészletekkódjában?Írdleaztis,miahiba!Töltsd ki a táblázatot!
Programrészlet Hiba fajtája és leírásafor (int i=0; i<n; i++)
{ ossz += v[i]; Szintaktikai hiba, a „}” hiányzik a végéről.
for (int i=0; i<n; i++)
{
int db = 0;
if (v[i]%2 == 0){ db++; }
}
Szemantikai hiba, a „db” változót a ciklus minden lépésé-ben nullázza, így legfeljebb 1 lehet az értéke a végén.
itt min = 0; Szintaktikai hiba, „itt” nevű típus nincsen, vagy a prog-ramkódban előtte nem deklaráltunk ilyet.
int i = -1; int n = 0;
while (i<n)
{
if (v[i]%2) { l = true; }
}
Szemantikai hiba, végtelen ciklus alakul ki, mert az „i” értéke nem változik a ciklusmagban.
int x = 15;
double y = 4.0;
textBox1.Text = x*y;
Szintaktikai hiba, a harmadik sorban string típusú válto-zónak nem lehet számot közvetlenül értékül adni.
PETRIK TISZK TÁMOP-2.2.3-07/1-2F-2008-0011 55
TANíTÁSI EgySÉg ÁLTALÁNoS BEmUTATÁSA
CÍM:KIVéTElEKKEzEléSE,EllENőrzöTTADATbEVITEL
Sorszám: 8.Évfolyam: 11. évfolyam
Időtartam: 3x45 perc A tanítási egység típusaTanóra (45 perc) Gyakorlat (2x45 perc)
Célok „Bolondbiztos” programok készítése.Kivételes helyzetek (nullával osztás, helytelen adattípus bevitele) kezelése alapszintű kivételkezelés felhasználásával.Felhasználói adatbevitel ellenőrzése hátultesztelő ciklus segítségével.
Követelmények Legyen képes olyan programot írni, amely a felhasználó által elkövetett hibá-kat is kezeli és képes azok káros következményeit elkerülni. Ismerje a kivétel-kezelés technikáját, felhasználhatóságát.Legyen képes olyan programot írni, amely csak akkor engedi tovább egy adott pontról a felhasználót, amikor a követelményeknek megfelelő értéket adott meg. Ismerje a hátultesztelő ciklus alkalmazhatóságát ilyen esetekben.
Informatikai, oktatástechnikai eszközök
Számítógép: 1 db. (minimum 1 GHz-es processzorral, és 512 mB memóriá-val, ajánlott: 2 GHz-es processzor, 1 GB memóriával)Projektor, vetítővászonEgyéb, pl. speciális szoftver: Visual C# Express 2008, szélessávú Internet-kapcsolat (a Súgóhoz).
források, javasolt tananyagok, kiad-ványok, internetes honlapok
Tanári prezentáció: AINFO11_TP8.pptMintaprogramok: AINFO11_Mintaprogramok8.zip
Visual Studio 2008 Express Editionshttp://www.microsoft.com/express/ (2009. 10. 24.)Illés Zoltán (2008): Programozás C# nyelven (2008-as változat), Budapest:
Jedlik oktatási Stúdió
56 BEVEZETÉS A VISUAL C# 2008 HASZNÁLATÁBA • TANÁrI KÉZIKöNyV 11. ÉVFoLyAm
A T
AN
ÍTÁ
SI E
GY
SÉG
– T
ÉMA
KÖ
R R
ÉSZ
LET
ES
LEÍ
RÁ
SA
A T
AN
ÍTÁ
SI E
GY
SÉG
– T
ÉMA
KÖ
R C
ÍME:
Kivételekkezelése,ellenőrzöttadatbevitel
Sor-
szám
Tém
a / A
ltém
aK
észs
ég /
képe
sség
Idő-
tart
am
(per
c)
Mód
szer
Mun
kafo
rma
Kép
zési
any
agok
, esz
közö
kE
gyéb
java
slat
ok
1.K
ivét
elek
kez
elés
e,
elle
nőrz
ött a
datb
evite
lm
egfig
yelé
sPr
ezen
táci
ó ny
omon
köv
etés
e30
Ta
nári
előa
dás
Fron
tális
osz
-tá
lym
unka
Taná
ri pr
ezen
táci
ó a
kivé
tele
k fo
galm
á-ró
l, a
kivé
tele
k le
ggya
korib
b típ
usai
ról,
a ki
véte
lek
keze
lésé
nek
lehe
tősé
gérő
l és
az
elle
nőrz
ött a
datb
evite
lről.
Am
enny
iben
a g
épen
ren-
delk
ezés
re á
ll a
tele
píte
tt V
isua
l C#
2008
, a ta
nár b
e is
m
utat
hat k
ódré
szle
teke
t vag
y m
inta
prog
ram
okat
műk
ödés
kö
zben
is.
2.Is
mét
lő k
érdé
sek
a ki
véte
lekr
ől, é
s az
elle
nőrz
ött a
datb
evi-
telrő
l
Előt
te h
allo
tt in
form
áció
fe
lidéz
ése
A ta
nulá
si fo
lyam
at e
llenő
rzé-
se te
sztk
érdé
sek
segí
tség
ével
10
Tesz
t-fel
-ad
atso
r ön
álló
ki
tölté
se
Egyé
ni m
unka
Tesz
tfela
dats
or a
8.1.
szám
ú m
ellé
klet
-be
nA
tesz
tfela
dato
k ki
tölté
se
közb
en a
pre
zent
áció
ne
legy
en lá
that
ó.
3.A
hel
yes v
álas
zok
meg
besz
élés
eK
omm
unik
áció
öne
llenő
rzés
Hib
ás v
álas
zok
korr
igál
ása
5 M
egbe
szé-
lés
Fron
tális
osz
-tá
lym
unka
Hel
yes m
egol
dáso
k a
8.2.
szám
ú m
el-
lékl
etbe
nA
zt is
bes
zéljü
k m
eg, h
ogy
a he
lyte
len
vála
szok
mié
rt ne
m
jók!
4.K
ivét
elek
kez
elés
ePr
even
tív h
ibak
ezel
ésA
„fe
lhas
znál
ó fe
jéve
l” tö
rté-
nő g
ondo
lkod
ásU
dvar
ias h
ibaü
zene
tek
kiírá
sa
20
Irán
yíto
tt te
véke
nysé
gEg
yéni
mun
ka8.
1. fe
lada
t a ta
nuló
i jeg
yzet
ben:
egy
ko
rább
i (eg
y fá
jlból
ada
tot b
eolv
a-só
) pro
gram
ot ír
unk
át ú
gy, h
ogy
a gy
akra
n el
őfor
duló
kiv
étel
es e
sete
t le
keze
ljük.
Am
enny
iben
a g
yere
kekn
ek
ninc
sen
meg
a ré
gebb
i pro
g-ra
m, a
djuk
oda
azo
k m
inta
-m
egol
dásá
t!
5.El
lenő
rzöt
t ada
tbev
itel
Hel
yes f
elté
tel f
elírá
saÖ
ssze
tett
felté
tele
k m
egal
ko-
tása
Hel
yes l
ogik
ai m
űvel
et a
lkal
-m
azás
a
30
Irán
yíto
tt te
véke
nysé
gEg
yéni
mun
ka8.
2. fe
lada
t a ta
nuló
i jeg
yzet
ben:
O
lvas
sunk
be
oszt
ályz
atok
at (c
sak
1 és
5 k
özöt
ti eg
ész
szám
okat
foga
djun
k el
)! K
ombi
nálju
k ki
véte
lkez
elés
sel,
a pr
ogra
m h
ibás
ada
t beí
rása
kor s
e sz
álljo
n el
!
Emlé
kezt
essü
k a
gyer
ekek
et
a D
e m
orga
n-az
onos
ságo
k ha
szná
latá
ra!
6.Ö
nálló
fela
datm
eg-
oldá
s„B
olon
dbiz
tos”
pro
gram
írás
aK
ivét
eles
ese
mén
yek
keze
lése
Kom
plex
fela
datm
egol
dás
Ada
tbev
itel e
llenő
rzés
e
30
Öná
lló
man
uális
te
véke
nysé
g
Egyé
ni m
unka
8.3.
fela
dat a
tanu
lói j
egyz
etbe
n: a
ko
rább
an m
egír
t más
odfo
kú e
gyen
let
gyök
eit s
zám
oló
prog
ram
ot fe
jless
zük
tová
bb, ú
gy, h
ogy
min
den
eset
et le
ke-
zelje
n, é
s tar
talm
azzo
n ki
véte
lkez
elés
t!
A fe
lada
thoz
mel
léke
lt m
inta
-m
egol
dás k
ódja
a ta
náro
k sz
á-m
ára
hozz
áfér
hető
, a d
iáko
k cs
ak a
futta
that
ó pr
ogra
mot
(E
XE)
kap
ják
meg
!7.
Az
ered
mén
yek
ösz-
szeg
zése
Kom
mun
ikác
ióö
nelle
nőrz
ésEr
edm
énye
k ös
szev
etés
e
10
Meg
besz
é-lé
sFr
ontá
lis o
sz-
tály
mun
kaA
fela
dato
k le
hets
éges
meg
oldá
sait
besz
éljü
k m
eg (a
mire
jut i
dő).
Ház
i fel
adat
: a ta
nuló
i jeg
yzet
8.
4. fe
lada
ta.
PETRIK TISZK TÁMOP-2.2.3-07/1-2F-2008-0011 57
8.1. SZÁMÚ MELLÉKLET – fELADATOK
8.1. Mikorbeszélünkkivételről?
8.2. Melyik kivételhez melyik üzenet kapcsolódik?Írd be az üres oszlopba a definícióhoz tartozó válasz betűjelét!
1. NullReferenceException a) Nem lehet bezárt TextReader objektumból ol-vasni.
2. IndexOutOfRangeException b) Kísérlet történt nullával való osztásra.
3. FormatException c) Az objektumhivatkozás nincs beállítva sem-milyen objektumpéldányra.
4. DivideByZeroException d) Az index a tömb határain kívülre mutatott.
5. ObjectDisposedException e) Nem megfelelő a bemeneti karakterlánc for-mátuma.
8.3. Azellenőrzöttadatbeviteltmilyenciklussalcélszerűmegvalósítani?Húzd alá a helyes választ!
Elöltesztelő Hátultesztelő
8.4. Adottakövetkezőadatbeolvasás.Írdátúgy,hogycsak10és20közöttiszámokatfogadjonel(beleértvea10-etésa20-atis)!
string s = Interaction.InputBox(”Kérem a következő számot:”,
”Adatbevitel”,”0”,100,100);
szam = int.Parse(s);
58 BEVEZETÉS A VISUAL C# 2008 HASZNÁLATÁBA • TANÁrI KÉZIKöNyV 11. ÉVFoLyAm
8.5. Milyenkivételfordulhatelőazalábbiprogramrészletekvégrehajtásasorán?Töltsd ki a táblázatot!
Programrészlet Kivétel fajtájaint x = int.Parse(textBox1.Text);
while (!f.EndOfStream)
{
string sor = f.ReadLine();
// sor feldolgozása
f.Close();
}
int c = a / b;
int[] tomb;
tomb[0] = 5;
int[] tomb = new int[MAX];
int i = -1;
tomb[i] = 10;
PETRIK TISZK TÁMOP-2.2.3-07/1-2F-2008-0011 59
8.2. SZÁMÚ MELLÉKLET – MEGOLDÁSOK
8.1. Mikorbeszélünkkivételről?Kivételről akkor beszélünk, amikor váratlan, előre nem látható hiba történik a programban.
8.2. Melyik kivételhez melyik üzenet kapcsolódik?Írd be az üres oszlopba a definícióhoz tartozó válasz betűjelét!
1. NullReferenceException c) a) Nem lehet bezárt TextReader objektumból ol-vasni.
2. IndexOutOfRangeException d) b) Kísérlet történt nullával való osztásra.
3. FormatException e) c) Az objektumhivatkozás nincs beállítva sem-milyen objektumpéldányra.
4. DivideByZeroException b) d) Az index a tömb határain kívülre mutatott.
5. ObjectDisposedException a) e) Nem megfelelő a bemeneti karakterlánc for-mátuma.
8.3. Azellenőrzöttadatbeviteltmilyenciklussalcélszerűmegvalósítani?Húzd alá a helyes választ!
Elöltesztelő Hátultesztelő
8.4. Adottakövetkezőadatbeolvasás.Írdátúgy,hogycsak10és20közöttiszámokatfogadjonel(beleértvea10-etésa20-atis)!
string s = Interaction.InputBox(”Kérem a következő számot:”,
”Adatbevitel”,”0”,100,100);
szam = int.Parse(s);
do
{
string s = Interaction.InputBox(”Kérem a következő számot:”,
”Adatbevitel”,”0”,100,100);
szam = int.Parse(s);
}
while (szam<10 || szam>20);
60 BEVEZETÉS A VISUAL C# 2008 HASZNÁLATÁBA • TANÁrI KÉZIKöNyV 11. ÉVFoLyAm
8.5. Milyenkivételfordulhatelőazalábbiprogramrészletekvégrehajtásasorán?Töltsd ki a táblázatot!
Programrészlet Kivétel fajtájaint x = int.Parse(textBox1.Text); FormatException while (!f.EndOfStream)
{
string sor = f.ReadLine();
// sor feldolgozása
f.Close();
}
objectDisposedException
int c = a / b; DivideByZeroExceptionint[] tomb;
tomb[0] = 5;NullReferenceException
int[] tomb = new int[MAX];
int i = -1;
tomb[i] = 10;
IndexOutOfRangeException
PETRIK TISZK TÁMOP-2.2.3-07/1-2F-2008-0011 61
TANíTÁSI EgySÉg ÁLTALÁNoS BEmUTATÁSA
CÍM: PROJEKTfELADAT: PROGRAM KÉSZÍTÉSESorszám: 9.Évfolyam: 11. évfolyam
Időtartam: 3x45 perc A tanítási egység típusaTanóra (45 perc) Gyakorlat (2x45 perc)
Célok Összetett feladat megoldása részfeladatokra bontással.Az eddig megszerzett ismeretek alkalmazása.A csapatban történő szoftverfejlesztés kipróbálása: a feladatok szétosztása, egymással kompatibilis részek megalkotása, a részek összetétele, a program tesztelése, a program bemutatójának előkészítése.
Követelmények Legyen képes egy összetett feladatot kisebb részekre szétbontani, amelyek önállóan már könnyen megoldhatók az eddigi ismeretek alkalmazásával.Legyen képes egy csapatban egyeztetni a feladatok szétosztásáról, legyen ké-pes felmérni a tudását, és annak megfelelő részfeladatot elvállalni.Legyen képes önállóan, a tanultak alkalmazásával előállítani egy önállóan működőképes részfeladatot, a megbeszélteknek megfelelően, a többi résszel kompatibilis módon.Legyen képes a csapatban elkészült munkákat egyetlen projektbe integrálni, tesztelni a működését, és megtervezni az elkészült produktum bemutatását.
Informatikai, oktatástechnikai eszközök
Számítógép: 1 db. (minimum 1 GHz-es processzorral, és 512 mB memóriá-val, ajánlott: 2 GHz-es processzor, 1 GB memóriával)Projektor, vetítővászonEgyéb, pl. speciális szoftver: Visual C# Express 2008, PowerPoint, esetleg képszerkesztő szoftver (Paint, Photoshop), szélessávú Internet-kapcsolat (a Súgóhoz).
források, javasolt tananyagok, kiad-ványok, internetes honlapok
Mintaprogramok: AINFO11_Mintaprogramok9_10.zip
Visual Studio 2008 Express Editionshttp://www.microsoft.com/express/ (2009. 10. 24.)Illés Zoltán (2008): Programozás C# nyelven (2008-as változat), Budapest:
Jedlik oktatási Stúdió
62 BEVEZETÉS A VISUAL C# 2008 HASZNÁLATÁBA • TANÁrI KÉZIKöNyV 11. ÉVFoLyAm
A T
AN
ÍTÁ
SI E
GY
SÉG
– T
ÉMA
KÖ
R R
ÉSZ
LET
ES
LEÍ
RÁ
SA
A T
AN
ÍTÁ
SI E
GY
SÉG
– T
ÉMA
KÖ
R C
ÍME:
Pro
jekt
fela
dat:
prog
ram
kés
zíté
se
Sor-
szám
Tém
a / A
ltém
aK
észs
ég /
képe
sség
Idő-
tart
am
(per
c)
Mód
szer
Mun
kafo
rma
Kép
zési
any
agok
, esz
közö
kE
gyéb
java
slat
ok
1.Pr
ojek
tfela
dat i
smer
teté
se
Mut
assu
k be
a g
yere
kekn
ek a
ké
t pro
gram
ot, a
mel
yek
közü
l vá
lasz
tani
uk k
ell.
Ism
erte
ssük
ve
lük
a cs
opor
t kia
lakí
tásá
nak
szem
pont
jait,
a ré
sztv
evők
fel-
adat
ait,
vala
min
t az
érté
kelé
s sz
empo
ntja
it.
meg
figye
lés
Taná
ri m
agya
ráza
t ny
omon
köv
etés
eEl
igaz
odás
a ta
nuló
i je
gyze
tben
10
Taná
ri el
őadá
sFr
ontá
lis o
sz-
tály
mun
kaA
két
lehe
tség
es (v
álas
ztha
tó) p
roje
kt-
fela
dat f
utta
that
ó ál
lom
ánya
, rés
zlet
es
taná
ri út
mut
atás
a c
sopo
rtok
kia
lakí
-tá
sáho
z és
a k
övet
elm
énye
k is
mer
te-
tésé
hez
a 9.1
. szá
mú
mel
lékl
etbe
n, a
fe
lada
tok
rész
lete
s ism
erte
tése
a ta
nuló
i je
gyze
tben
.
A g
yere
kek
csak
a m
inta
-pr
ogra
mok
futta
that
ó EX
E ál
lom
ánya
it ka
phat
ják
meg
, a
kódo
t nem
láth
atjá
k!
2.C
sopo
rtok
kia
lakí
tása
, fel
adat
vá
lasz
tása
A g
yere
kekn
ek 3
, max
imum
4
fős c
sopo
rtok
ba k
ell r
ende
-ző
dniü
k. K
i kel
l vál
aszt
aniu
k,
hogy
mel
yik
fela
dato
t sze
ret-
nék
meg
olda
ni a
ket
tő k
özül
, ill
etve
azt
is b
e ke
ll os
ztan
iuk,
ho
gy a
cso
port
mel
y ta
gja
mel
yik
rész
ét fo
gja
csin
álni
a
fela
datn
ak.
Vál
assz
anak
a g
yere
kek
csap
atne
vet,
ha le
het,
akko
r lo
gót i
s, ill
etve
adj
anak
nev
et
a vá
lasz
tott
fela
datr
a m
egír
t pr
ogra
mna
k!
Koo
pera
tivitá
sTo
lera
ncia
Alk
alm
azko
dás
Kon
szen
zusk
eres
ésD
önté
shoz
ásÖ
nérv
énye
sítés
Sajá
t tel
jesít
őkép
es-
ség
becs
lése
25
Meg
besz
é-lé
sV
ita
Kis
cso
port
os
mun
ka (l
ehet
ő-le
g he
tero
gén
csop
orto
k)
A k
ét le
hets
éges
(vál
aszt
ható
) pro
jekt
-fe
lada
t fut
tath
ató
állo
mán
ya, r
észl
etes
ta
nári
útm
utat
ás a
cso
port
ok k
iala
kí-
tásá
hoz
és a
köv
etel
mén
yek
ism
erte
-té
séhe
z a
9.1. s
zám
ú m
ellé
klet
ben,
a
fela
dato
k ré
szle
tes i
smer
teté
se a
tanu
lói
jegy
zetb
en.
A c
sopo
rtok
kia
lakí
tása
lehe
t te
tsző
lege
s, va
gy a
taná
r is
beos
ztha
tja a
gye
reke
ket 3
-4
fős c
sopo
rtok
ba. F
igye
ljünk
ar
ra, h
ogy
lehe
tőle
g m
inde
n cs
opor
tba
juss
on le
galá
bb e
gy
olya
n ta
nuló
, aki
nek
jobb
an
meg
y a
prog
ram
ozás
, ille
tve
olya
n is
, aki
az
info
rmat
ika
más
terü
lete
in (p
l. ké
psze
r-ke
szté
s, pr
ezen
táci
ó) k
iem
el-
kedő
.
3.C
sopo
rtok
, vál
aszt
ott f
elad
at
felje
gyzé
se
A ta
nár j
egye
zze
fel,
hogy
ki
mel
yik
csop
ortb
a ta
rtoz
ik, é
s m
elyi
k fe
lada
tot v
álas
ztot
ták!
Kom
mun
ikác
ió10
M
egbe
szé-
lés
Fron
tális
osz
-tá
lym
unka
A fe
ljegy
zésh
ez sz
üksé
ges t
áblá
zat a
9.
2. sz
ámú
mel
lékl
etbe
n ta
lálh
ató.
N
PETRIK TISZK TÁMOP-2.2.3-07/1-2F-2008-0011 63
A T
AN
ÍTÁ
SI E
GY
SÉG
– T
ÉMA
KÖ
R C
ÍME:
Pro
jekt
fela
dat:
prog
ram
kés
zíté
se
Sor-
szám
Tém
a / A
ltém
aK
észs
ég /
képe
sség
Idő-
tart
am
(per
c)
Mód
szer
Mun
kafo
rma
Kép
zési
any
agok
, esz
közö
kE
gyéb
java
slat
ok
4.Pr
ojek
tfela
dat m
egva
lósít
ása
Egy
dupl
a ór
ás g
yako
rlato
n ké
szíts
ék e
l a c
sopo
rtok
a
vála
szto
tt fe
lada
t meg
oldá
sát!
Az
eddi
g ta
nult
ism
e-re
tek
hasz
nála
taÖ
nálló
mun
kára
val
ó ké
pess
égA
lkal
maz
kodá
sM
egol
dás m
egte
rve-
zése
, meg
való
sítás
aA
z id
ő he
lyes
beo
sz-
tása
Együ
ttműk
ödés
i ké
szsé
gPr
ojek
tsze
mlé
let
Rés
z-eg
ész
visz
ony
átte
kint
ése
Rés
zek
hely
reill
esz-
tése
90
Proj
ekt
Kis
cso
port
os
mun
ka (l
ehet
ő-le
g he
tero
gén
csop
orto
k)
A k
ét le
hets
éges
(vál
aszt
ható
) pro
jekt
-fe
lada
t fut
tath
ató
állo
mán
ya, r
észl
etes
ta
nári
útm
utat
ás a
9.1.
szám
ú m
ellé
klet
-be
n, a
fela
dato
k ré
szle
tes i
smer
teté
se a
ta
nuló
i jeg
yzet
ben.
Miv
el a
gye
reke
knek
felte
he-
tően
igen
cse
kély
tapa
szta
lata
va
n a
proj
ektm
unká
ban,
ezé
rt se
gíts
ünk
neki
k! Já
rjunk
kö
rbe,
elle
nőri
zzük
, hog
y a
csop
ortb
ól m
inde
nki d
olgo
z-zo
n, é
s pró
bálju
nk m
eg a
rra
is fi
gyel
ni, h
ogy
egye
nlet
esen
os
szák
el a
fela
dato
kat!
Az
óra
végé
n go
ndos
kodj
anak
ar
ról,
hogy
az
elké
szül
t m
unká
kat b
izto
nság
os h
elyr
e m
ents
ék! (
Am
enny
iben
nem
si
kerü
l bef
ejez
ni, l
egké
sőbb
a
bem
utat
ó ór
ára
feje
zzék
be
a cs
opor
tok
a m
unká
t!)
64 BEVEZETÉS A VISUAL C# 2008 HASZNÁLATÁBA • TANÁrI KÉZIKöNyV 11. ÉVFoLyAm
9.1. SZÁMÚ MELLÉKLET – SEGÉDLETEK
A feladat ismertetése:A választható feladatok részletes leírása megtalálható a tanulói jegyzetben. A két mintaprogram fut-tatható állománya (Lottosorsolas.exe, illetve Osztalypenz.exe) megmutatható a gyerekeknek.Hívjukfelafigyelmüketarra,hogyamintaprogramokkizárólagtámpontotnyújtanakafeladatelkészítéséhez,nemegyazegybenkellreprodukálni,azcsakaminimum!Azelkészültprogra-moklegyenekszebbekésjobbakamintaprogramoknál!
Csoport alakításának szempontjai:1. mindenképpen törekedjünk a heterogén csoportképzésre! Ellenőrizzük, hogy nagyjából azonosan
osszák el a feladatokat egymás között!2. 3-4 fős csoportokban gondolkodjunk, a kiosztandó feladatok:
Tervező: feladata, hogy megtervezze és megszerkessze a program külsejét (felhasználói felületét), –illetve elkészítsen egy reklámanyagot (prezentáció és/vagy plakát), amely a terméket mutatja be, illetve népszerűsíti.Programozó: a tulajdonképpeni kódolás a feladata, egyeztetve a tervezővel az egyes elemek funk- –cióját. Képesnek kell lennie szintaktikailag hibátlan, lefordítható, futtatható program előállítására. Amennyiben lehetséges, kommentekkel (megjegyzésekkel) lássa el programját, hogy a többiek is ki tudjanak benne igazodni. Átlátható, szép kódot kell írnia!Tesztelő, hibakereső: aki átlátja a program működését, megkeresi és a programozóval együtt javítja –a hibákat (szemantikai, illetve kivételes eset jellegűeket). Az ő felelőssége, hogy a program lénye-gében minden körülményt figyelembe véve jól működjön, és helyes eredményt adjon.Szóvivő: az előző három funkció valamelyike mellé a csoport valamelyik tagjának el kell vállalni, –hogy a bemutatás alkalmával ismerteti a programot, annak működését, képviselve a csoport mun-káját.
3. Ne legyen olyan csoport, amelyben nincs olyan gyerek, akinek jó érzéke van a programozáshoz, jól megy neki, mert különben a csoport nem fogja tudni elkészíteni a projektfeladat megoldását.
Az értékelés szempontjai:Külső: mennyire szép, jól használható, intuitív a program kezelői felülete. –Helyes működés: a program a lehetséges hibákat jól kezeli, jó eredményt ad minden esetben, nem –lehet „kiakasztani”.Extrák: mennyire tért el a mintaprogramtól, illetve valósította meg a javasolt továbbfejlesztéseket. –Itt lehet díjazni, ha a program nem pusztán másolata a mintaprogramnak, hanem attól jó értelem-ben eltérő, igényes, egyedi munka. Átlátható, szép kód: jól tagolt, követhető, megjegyzésekkel ellátott, tehát egy külső ember számára –könnyedén továbbfejleszthető.marketing: mennyire igényes, elegáns bemutatót, ill. plakátot terveztek a program népszerűsíté- –sére, milyen volt az előadó, mennyire mutatta be a program értékeit, mennyire hangsúlyozta az erősségeket.
PETRIK TISZK TÁMOP-2.2.3-07/1-2F-2008-0011 65
9.2. SZÁMÚ MELLÉKLET – TÁbLÁZAT
Sor-szám
Csoport neve Csoport tagjai Választott feladat
1. . Lottó / Osztálypénz
2. Lottó / Osztálypénz
3. Lottó / Osztálypénz
4. Lottó / Osztálypénz
5. Lottó / Osztálypénz
6. Lottó / Osztálypénz
7. Lottó / Osztálypénz
8. Lottó / Osztálypénz
9. Lottó / Osztálypénz
10. Lottó / Osztálypénz
11. Lottó / Osztálypénz
12. Lottó / Osztálypénz
66 BEVEZETÉS A VISUAL C# 2008 HASZNÁLATÁBA • TANÁrI KÉZIKöNyV 11. ÉVFoLyAm
TANíTÁSI EgySÉg ÁLTALÁNoS BEmUTATÁSA
CÍM: PROJEKTfELADAT: PROGRAM bEMuTATÁSASorszám: 10.Évfolyam: 11. évfolyam
Időtartam: 1x45 perc A tanítási egység típusaTanóra (45 perc)
Célok Az elkészült projekt bemutatása, különféle szempontok szerinti értékelése.A saját és a más csapatok munkájának kritikus, de objektív bírálata, a többi csapat pontozása.
Követelmények Legyen képes a csapat nevében bemutatni a közös fejlesztés eredményeit, ki-emelve a megvalósítás esetleges specialitásait, bravúrjait.Legyen képes a saját és a mások munkáját objektíven értékelni, tetszőleges skálán pontozni, a csapat által kapott pontszámot igazságosan elosztani.
Informatikai, oktatástechnikai eszközök
Számítógép: 1 db. (minimum 1 GHz-es processzorral, és 512 mB memóriá-val, ajánlott: 2 GHz-es processzor, 1 GB memóriával)Projektor, vetítővászonEgyéb, pl. speciális szoftver: Visual C# Express 2008, PoerPoint, szélessávú Internet-kapcsolat (a Súgóhoz).
források, javasolt tananyagok, kiad-ványok, internetes honlapok
Mintaprogramok: AINFO11_Mintaprogramok9_10.zip
Visual Studio 2008 Express Editionshttp://www.microsoft.com/express/ (2009. 10. 24.)Illés Zoltán (2008): Programozás C# nyelven (2008-as változat), Budapest:
Jedlik oktatási Stúdió
PETRIK TISZK TÁMOP-2.2.3-07/1-2F-2008-0011 67
A T
AN
ÍTÁ
SI E
GY
SÉG
– T
ÉMA
KÖ
R R
ÉSZ
LET
ES
LEÍ
RÁ
SA
A T
AN
ÍTÁ
SI E
GY
SÉG
– T
ÉMA
KÖ
R C
ÍME:
Pro
jekt
fela
dat:
prog
ram
bem
utat
ása
Sor-
szám
Tém
a / A
ltém
aK
észs
ég /
képe
sség
Idő-
tart
am
(per
c)
Mód
szer
Mun
kafo
r-m
aK
épzé
si a
nyag
ok, e
szkö
zök
Egy
éb ja
vasl
atok
1.El
kész
ült p
roje
ktfe
lada
tok
bem
utat
ása,
ért
ékel
ése
Az
egye
s cso
port
ok „
szóv
i-vő
je”
bem
utat
ja a
z el
kész
ült
prog
ram
ot, i
lletv
e vá
lasz
ol a
kö
zben
felm
erül
t kér
dése
kre.
meg
figye
lés
Bem
utat
ók n
yom
on k
övet
ése
A sz
oftv
er, m
int t
erm
ék
bem
utat
ása
Mar
ketin
gLé
nyeg
kie
mel
ése
Erős
sége
k ha
ngsú
lyoz
ása
Öné
rték
elés
Önk
ritik
aO
bjek
tivitá
sÖ
nsza
bály
ozás
: érz
elm
i és
indu
lati
kont
roll
A sa
ját p
robl
émák
felis
mer
é-se
, bei
smer
ése
40
Tanu
lói
előa
dás
Fron
tális
os
ztál
y-m
unka
Az
elké
szül
t pro
jekt
fela
dato
k,
bem
utat
ókÉr
téke
lőla
pok
a 10
.1. sz
ámú
mel
-lé
klet
ben
A g
yere
kek
mut
assá
k be
az
elké
szül
t pro
gram
ot, d
e ne
cs
ak a
futta
that
ó ál
lom
ányt
, ha
nem
rövi
den
térje
nek
ki
a m
egol
dásr
a is
, mut
assa
-na
k kó
drés
zlet
eket
, kül
önös
te
kint
ette
l arr
a, h
a a
meg
oldá
s re
ndel
kezi
k va
lam
ilyen
kü-
lönl
eges
ségg
el, s
peci
alitá
ssal
.K
özbe
n a
több
i cso
port
tölts
ön
ki e
gy-e
gy é
rték
elől
apot
!
2.A
z el
kész
ült m
unká
k rö
vid
érté
kelé
seK
omm
unik
áció
5 M
egbe
szé-
lés
Fron
tális
os
ztál
y-m
unka
NB
eszé
ljük
meg
, mik
vol
tak
az
elké
szül
t mun
kák
erős
sége
i, és
rövi
den
térjü
nk k
i az
eset
-le
ges g
yeng
eség
ekre
is!
Szed
jük
be a
z ér
téke
lőla
poka
t, és
a k
övet
kező
órá
n is
mer
tes-
sük,
mel
yik
csop
ort k
apta
a
legt
öbb
pont
szám
ot!
68 BEVEZETÉS A VISUAL C# 2008 HASZNÁLATÁBA • TANÁrI KÉZIKöNyV 11. ÉVFoLyAm
10.1.SzáMÚMElléKlET–érTéKElőlAPoK
Szempontok Csoportnevek
Külső:mennyire szép, jól használható, intuitív a program kezelői felülete.Helyesműködés:a program a lehetséges hibákat jól kezeli, jó eredményt ad minden esetben, nem lehet „kiakasztani”.Extrák:mennyire tért el a mintaprogramtól, illetve valósította meg a javasolt továbbfejlesztése-ket. Itt lehet díjazni, ha a program nem pusz-tán másolata a mintaprogramnak, hanem attól jó értelemben eltérő, igényes, egyedi munka. Átlátható, szép kód:jól tagolt, követhető, megjegyzésekkel ellá-tott, tehát egy külső ember számára könnye-dén továbbfejleszthető.Marketing:mennyire igényes, elegáns bemutatót, ill. plakátot terveztek a program népszerűsítésé-re, milyen volt az előadó, mennyire mutatta be a program értékeit, mennyire hangsúlyoz-ta az erősségeket.Átlagpontszám:
AzérTéKEléSöTFoKozATÚSKáláNTörTéNIK!
Nemzeti Fejlesztési ÜgynökségÚMFT infovonal: 06 40 638 [email protected] • www.nfu.hu