70
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 TISZK TÁMOP-2.2.3-07/1-2F-2008-0011 SZAKMACSOPORTOS ALAPOZÓ GYAKORLATOK INFORMATIKA TERÜLETRE Bevezetés a Visual C# 2008 használatába 11. évfolyam TANÁRI KÉZIKÖNYV

BEVEZETÉS A VISUAL C# 2008 HASZNÁLATÁBA INformATIkAI

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

R R

ÉSZ

LET

ES

LEÍ

SA

A T

AN

ÍTÁ

SI E

GY

SÉG

– T

ÉMA

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á

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

k!4.

A V

isua

l C#

2008

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

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

R R

ÉSZ

LET

ES

LEÍ

SA

A T

AN

ÍTÁ

SI E

GY

SÉG

– T

ÉMA

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

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

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

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:

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

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

R R

ÉSZ

LET

ES

LEÍ

SA

A T

AN

ÍTÁ

SI E

GY

SÉG

– T

ÉMA

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

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:

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

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

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

R R

ÉSZ

LET

ES

LEÍ

SA

A T

AN

ÍTÁ

SI E

GY

SÉG

– T

ÉMA

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

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

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

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:

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)

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

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

R R

ÉSZ

LET

ES

LEÍ

SA

A T

AN

ÍTÁ

SI E

GY

SÉG

– T

ÉMA

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

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

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

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

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

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

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

R R

ÉSZ

LET

ES

LEÍ

SA

A T

AN

ÍTÁ

SI E

GY

SÉG

– T

ÉMA

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

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

R R

ÉSZ

LET

ES

LEÍ

SA

A T

AN

ÍTÁ

SI E

GY

SÉG

– T

ÉMA

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

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

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

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

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

R R

ÉSZ

LET

ES

LEÍ

SA

A T

AN

ÍTÁ

SI E

GY

SÉG

– T

ÉMA

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

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

R R

ÉSZ

LET

ES

LEÍ

SA

A T

AN

ÍTÁ

SI E

GY

SÉG

– T

ÉMA

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

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á

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

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

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

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

R R

ÉSZ

LET

ES

LEÍ

SA

A T

AN

ÍTÁ

SI E

GY

SÉG

– T

ÉMA

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

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á

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