12.07.2013 Views

jegyzet gyomlált változata - Eötvös Loránd Tudományegyetem

jegyzet gyomlált változata - Eötvös Loránd Tudományegyetem

jegyzet gyomlált változata - Eötvös Loránd Tudományegyetem

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

8.4.3. A for-ciklus<br />

A for-ciklus abban különbözik a while-ciklustól, hogy ebben az esetben meg lehet adni egy<br />

ciklusváltozót. A ciklusváltozó minden ciklusban automatikusan frissül. A for-ciklusnak<br />

is két formája van:<br />

for (kif1; kif2; kif3) utasítás<br />

for (var in tömb) utasítás<br />

Az első esetben a ciklus előtt végrehajtódik a kif1 kifejezés. Ezután mindaddig végrehajtódik<br />

az utasítás, ameddig kif2 igaz. Minden ciklusban végrehajtódik a kif3 kifejezés<br />

is, amely általában a ciklusváltozó frissítését végzi.<br />

A második formában egy var változó egy adott tömb indexhalmazán fut végig, így<br />

az utasításban elérhetjük a tömb elemeit.<br />

Ha a vezérlés a break utasításhoz ér, akkor a program azonnal kilép a legbelső ciklusból.<br />

Ha a program a continue utasításhoz ér, akkor felfüggeszti az utasítás futását, és a<br />

ciklusváltozó új értékével folytatja a program futtatását.<br />

8.4.4. Tömbök törlése, és kilépés<br />

Tömbök elemeit és magukat a tömböket is a delete paranccsal törölhetjük. A futó programból<br />

az exit paranccsal léphetünk ki.<br />

8.4.5. Utasítások csoportosítása<br />

Utasításblokkokat kapcsos zárójelekkel hozhatunk létre. Ez különösen hasznos amikor<br />

pl. egy ciklusban több utasítást akarunk végrehajtani.<br />

8.5. Példák és feladatok<br />

8.1. Példa Írjunk egy awk szkriptet, amely egy bemenő adatfájl minden sorára megszámolja<br />

a pozitív és a negatív számokat, és a két számot soronként kiírja a képernyőre.<br />

8.2. Példa A mellékelt adatfájlban hallgatói azonosító kódok és érdemjegyek vannak felsorolva.<br />

Írjunk egy awk szkriptet, amely megszámolja, hogy hány hallgató kapott ötöst,<br />

négyest, stb.<br />

8.1. Feladat Írjunk egy awk szkriptet, amely megkeresi egy adatfájlban a legnagyobb és<br />

a legkisebb elemet, és kiírja a képernyőre.<br />

8.2. Feladat Írjunk egy awk szkriptet, amely egy adott adatfájlra kiszámolja a sorok<br />

átlagát.<br />

101

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!