1 print('Kerékpárosforgalom-számlálás')
2 print('-------------------------------------------------------------')
3 forgalom = [36, 48, 39, -1, 30, 43, -1, 76, 67, 82, 73, 75, 64, 73, 69, 63]
4 # forgalom = [adat if adat != -1 else 0 for adat in forgalom]
5 print(forgalom)
6 print('\n2. feladat')
7 osszesen = sum(adat for adat in forgalom if adat != -1)
8 print(f'"Pythonos" megoldás: Összesen {osszesen} kerékpárost számoltak.')
9
10 # "KLASSZIKUS" MEGOLDÁS - feltételes összegzés
11 osszesen = 0
12 for adat in forgalom:
13 if adat != -1:
14 osszesen += adat
15 print(f'Klasszikus megoldás: Összesen {osszesen} kerékpárost számoltak.')
16
17 print('\n3. feladat')
18 orankent = [] # 6 órától 10 óráig tart a számlálás (4 x 4 adatunk van)
19 for ora in range(0, len(forgalom), 4):
20 osszesen = sum(forgalom[ora:ora+4]) # 4 elemű részlistát összegezzük
21 hiba = forgalom[ora:ora+4].count(-1) # ebben a 4 elemben hány -1-es van (count)
22 orankent.append(osszesen + hiba) # -1-eket "visszaadjuk"
23 for ora, adat in enumerate(orankent, 6): # enumerate: 6-tól indul az ora változó értéke
24 print(f'{ora} órától {adat} kerékpáros')
25
26 print('\n4. feladat')
27 hely = forgalom.index(max(forgalom)) + 1 # max fv. kiválasztja a legnagyobb értéket, az index fv. megadja
28 # az indexét, +1, hogy rendes sorszámot kapjunk
29 ora = 6 + hely // 4 # melyik "négyesben", azaz órában vagyunk (// egész részt adja osztáskor)
30 perc = (hely % 4) * 15 # hányadik percben (minden 15 percben van egy adatunk)
31 print(f'Az áthaladók maximális száma: {max(forgalom)}; a rögzítés időpontja: {ora}:{perc}')
32
33