PYTHON PROGRAMOZÁS
8. Típusalgoritmusok 2.
Olyan algoritmusok (programozási tételek), amelyekkel a programírás során felmerülő problémák egyszerűen megoldhatók.
e, KERESÉS
f, MEGSZÁMOLÁS
g, MAXIMUM- ÉS MINIMUKIVÁLASZTÁS
e, KERESÉS
(gyakorlatilag az eldöntés és a kiválasztás egybeépítése)
09a KERESÉS (TK. 71. old. 1. feladat)
(Melyik fuvar során kapott először ötpiculást a taxis?)
bevételek = [1,5,2,3,4]
vanilyen = False
holvan = None
for index in range(len(bevételek)):
if bevételek[index] == 5:
vanilyen = True
holvan = index
break
if vanilyen:
print('Az ötpiculás fuvar sorszáma:', holvan + 1)
else:
print('Nincs ötpiculás fuvar.')
09b KERESÉS (TK. 71. old. 1. feladat)
(Megoldás INDEX függvénnyel)
bevételek = [1,5,2,3,4]
if 5 in bevételek:
print('Az ötpiculás fuvar sorszáma:', bevételek.index(5) + 1)
else:
print('Nincs ötpiculás fuvar.')
f, MEGSZÁMOLÁS
(adott elemből mennyi van a listában)
A lista bejárását végző ciklus előtt létrehozunk egy számláló szerepű változót, és a nulla értéket adjuk neki. Minden egyes találatnál növeljük a számláló értékét.
11 MEGSZÁMOLÁS (TK. 72. old. 3. feladat)
(Megoldás COUNT függvénnyel)
bevételek = [1,5,2,3,4]
ennyi = bevételek.count(5)
print('Összesen', ennyi, 'ötpiculás fuvar volt.')
12 MEGSZÁMOLÁS (TK. 72. old. 4. feladat)
(Mennyi 3 kilónál nem nagyobb libája marad a rókának?)
libák = [1,5,2,3,4]
számláló = 0
for liba in libák:
if liba <= 3:
számláló += 1
print(számláló, 'libája marad a rókának.')
g, MAXIMUM- ÉS MINIMUKIVÁLASZTÁS
(legnagyobb és legkisebb elem megkeresése)
Vezessünk be egy változót, amelynek az értéke a feladatban elképzelhető legkisebb eredmény. Nézzük végig egyesével a listánk elemeit, és ha találunk a változóban tároltnál nagyobb értéket, akkor cseréljük erre a változó tartalmát!
13a MAXIMUMKIVÁLASZTÁS (TK. 73. old. 5. feladat)
(Melyik volt a taxis legjobb fuvarja?)
bevételek = [1,5,2,3,4]
legtöbb = 0
for bevétel in bevételek:
if bevétel > legtöbb:
legtöbb = bevétel
print('A legjobb fuvar', legtöbb, 'piculát ért.')
13b MAXIMUM- ÉS MINIMUMKIVÁLASZTÁS (TK. 73. old. 5. feladat)
(Melyik volt a taxis legjobb és legrosszabb fuvarja?)
Megoldás MIN és MAX használatával.
bevételek = [1,5,2,3,4]
print('A legjobb fuvar', max(bevételek), 'piculát ért.')
print('A legrosszabb csak', min(bevételek), 'piculát hozott.')
14 MINIMUMKIVÁLASZTÁS (TK. 73. old. 6. feladat)
(Mekkora a legkisebb liba, amit a farkas elvesz a rókától? )
libák = [1,5,2,3,4]
farkas_legkisebb_libája = 100
for liba in libák:
if liba >= 4:
if liba < farkas_legkisebb_libája:
farkas_legkisebb_libája = liba
print('A farkasnak jutó legkisebb liba', farkas_legkisebb_libája, 'kg.')