C# 2008 HALADÓKNAK

Preview:

DESCRIPTION

C# 2008 HALADÓKNAK. Vezérlési szerkezetek: elágazások, ciklusok. Elágazások. Gyakran előfordul, hogy 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. Ezt hívjuk elágazásnak . Fajtái: - PowerPoint PPT Presentation

Citation preview

1

C# 2008 HALADÓKNAK

Vezérlési szerkezetek: elágazások, ciklusok

Szakképzési Portál

2

Elágazások

• Gyakran előfordul, hogy 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.

• Ezt hívjuk elágazásnak.• Fajtái:– egy-, illetve kétirányú elágazás– többirányú elágazás

3

Elágazások: egy- és kétirányú• Egyirányú elágazás:if (feltétel){ utasítások;}

• Kétirányú elágazás:if (feltétel){ utasítások;}else{ utasítások;}

4

Elágazások egymásba ágyazása• Egymásba ágyazott elágazások:if (feltétel1){ utasítások;}else if (feltétel2){ utasítások;}…else if (feltételn){ utasítások;}else{ utasítások;}

• Például:if (x>0){ label1.Text="pozitív";}else if (x<0){ label1.Text="negatív";}else{ label1.Text="nulla";}

5

Elágazások: többirányú• Elágazás egy változó értékétől

függetlenülswitch (kifejezés){ case érték1: utasítások;

break; case érték2: utasítások; break; case érték3: utasítások; break;

… default: utasítások;

break;}

• Szabályok:– A kifejezés csak int vagy char típusú

lehet.– Intervallumot nem lehet megadni, és

több értéket sem lehet felsorolni.– Nem lehet két sorban a case után

ugyanaz az érték.– Ha a case után nem írunk utasítást,

akkor a következő soron folytatódik a végrehajtás.

– A default utáni utasításokat akkor hajtja végre, ha egyik felsorolt érték sem egyezik meg a kifejezés értékével.

– A break utasítás minden ág végén kötelező!

6

Ciklusok• Ciklusokat akkor használunk, amikor egy adott

tevékenységet (ciklusmag) többször végre kell hajtanunk.• Azokat a változókat, amelyektől a ciklus futása függ,

ciklusváltozónak hívjuk.• Fajtái:

– számláló: előre megadott számú alkalommal fut le a ciklusmag.– elöltesztelő: egy feltétel teljesülésétől függően hajtja végre a

ciklusmagot (előfordulhat, hogy egyszer sem, ha a feltétel már kezdetben sem teljesül)

– hátultesztelő: egyszer mindenképpen végrehajtja a ciklusmagot, majd addig ezt ismétli, amíg a feltétel teljesül.

7

Ciklusok: számláló• Előre megadott számú alkalommal fut le a ciklusmag.for ( kezdőérték-adás; feltétel; ciklusváltozó növelése){ utasítások;}• Példa:for (i=0; i<10; i++){ listBox1.Items.Add(i.ToString());}• A példában az i a ciklusváltozó, amely sorban felveszi a 0, 1, 2, 3, …, 9 értékeket,

ezeket beírja a listába, majd a ciklus futása befejeződik.• Megjegyzés: az i++ jelentése: i = i + 1.

8

Ciklusok: elöltesztelő• Egy feltétel teljesülésétől függően hajtja végre a ciklusmagot• Előfordulhat, hogy egyszer sem, ha a feltétel már kezdetben sem teljesülwhile (feltétel){ utasítások;}• Példa:while (!f.EndOfStream){ s = f.ReadLine(); listBox1.Items.Add(s);}• A példában addig olvasunk be egy szövegfájlból, amíg nem érünk a végére. Itt a

ciklusváltozó szerepét az f fájlváltozó játssza.

9

Ciklusok: for és while• A for és a while ciklusok lényegében egyformák a C# nyelvben.• Példa:for (i=0; i<10; i++){ listBox1.Items.Add(i.ToString());}

int i=0;while (i<10){ listBox1.Items.Add(i.ToString()); i++;}• Ez alapján bármelyik átírható a másikra!• Figyeljünk oda, hogy a while ciklusból ne maradjon ki a ciklusváltozó változtatása,

mert az végtelen ciklushoz vezet!

10

Ciklusok: hátultesztelő• Egyszer mindenképpen végrehajtja a ciklusmagot, majd addig ezt ismétli, amíg a

feltétel teljesül.do{ utasítások;} while (feltétel);Példa:i=0;ossz=0;do{ i++; ossz += i; // jelentése: ossz = ossz + i} while (i<10);• A példában 1-től 10-ig összeadjuk a számokat.

Recommended