Python szakkör: FORdulj, perdülj!

Korábbi cikkünkben felvetettük, hogy sokszor kényelmetlen, ha egy programot csak egyszer futtathatunk. A WHILE parancsot használva becsomagoltunk egy tevékenységet. A WHILE addig darálta, amíg egy feltétel nem teljesült. Például: “Amíg nem kapsz fizetésemelést, ne egyél.”, “Amíg hideg van, rakj a tűzre.” (Ne engem…)

Ennek a fajta ciklusnak a bosszantó szépséghibája, hogy ha nem teljesül a feltétel, furcsa dolgok történhetnek. Éhen halsz a következetes koplalással egy szívtelen főnöknél, vagy egy nyitott ablak mellett két nap alatt eltüzeled a tartalékaidat. A programozásban a tipikus hiba, hogy végtelenné válik a ciklus, mert sosem teljesül az a feltétel, amit kikötöttél, s kénytelen vagy szétverni a számítógépedet, hogy a program leálljon.

Most nézzük egy olyan ciklusparancsot, ami sosem emigrál a nagy szagos végtelenbe, mivel mi mondjuk meg, hányszor forduljon. Ő a FOR.

for betu in "Sziamiau":
 print(betu)

Kezdjük az első sor végén: Van egy “Sziamiau” nevű karakterlánc. A FOR parancs megnézi ennek az első betűjét (IN segítségével megmutatjuk neki), és azt berakja a “betu” nevű változóba. Kettőspontot írunk, mert most jön a ciklus magja. Itt pedig egy ismert utasítással kiíratjuk a “betu” változóba tárolt értéket.

Ezután persze nem áll le a ciklus, hanem végigdarál az összes karakteren.

Ez nem túl látványos példa, sok mindenre nem is használható, de legalább működik.

1) Feladat: Készíts egy ciklust, ami megszámolja milyen hosszú egy karakterlánc! Például egy név vagy egy vers, stb.

2) Mit csinál a következő ciklus?

for x in range(10):
    print(x)

3) Hogyan működik ezzel a kis változtatással?

for x in range(5,10):
    print(x)

4) Értelmezd!

for x in range(5,10,2):
    print(x)

5) Készíts programot, amely 0-tól 10-ig kiszámítja az y = 2x + 2 függvény helyettesítési értékeit!

6) Változtasd meg a tartományt -10-től +10 ig!

7) Készíts olyan programot, amelynek te adhatod meg a tartomány határait!

 

 

 

 

 

 

 

 

 

 

1) Feladat megoldása:

szamlalo = 0
for betu in "Sziamiau":
    szamlalo = szamlalo + 1;
print(szamlalo)

 

 

 

 

Vélemény, hozzászólás?

Az email címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük

This blog is kept spam free by WP-SpamFree.