Sprehod po elementih tabele

Če želimo sešteti elemente v tabeli, ugotoviti, kateri je največji ipd., se moramo znati po tabeli sprehoditi – obiskati vsak element posebej. Osnovni sprehod po tabeli smo si na kratko že ogledali v prejšnji učni enoti:

for element in tabela:
  # element vsebuje trenutni element tabele

V prvem obhodu zanke se v spremenljivko element zapiše prvi element tabele, v drugem drugi itd. Oglejmo si primer. Koliko kilogramov sladkarij je Liza Bonbonc prodala v celotnem letu? Na to vprašanje lahko odgovorimo s sprehodom po tabeli in pomožno spremenljivko, ki hrani skupno količino sladkarij do trenutnega meseca. Pomožno spremenljivko (imenovali jo bomo prodajaLeto) najprej postavimo na 0, v vsakem koraku zanke pa ji prištejemo trenutni element tabele. Napišimo program:

Izvedi Počisti



V prvem obhodu zanke ima spremenljivka prodajaMesec vrednost 182, v drugem 250, v tretjem 225 itd. Spremenljivka prodajaLeto pa ima po prvem obhodu zanke vrednost 0 + 182 = 182, v drugem 182 + 250 = 432 (torej vsoto po prvih dveh mesecih), v tretjem 432 + 225 = 657 (vsoto po prvih treh mesecih) itd. Ko se zanka konča, spremenljivka prodajaLeto vsebuje skupno količino prodanih sladkarij v celotnem letu.

Vaja

Kolikšna je bila največja mesečna prodaja sladkarij? Te naloge se lotimo tako, da se sprehodimo po tabeli, sproti pa vzdržujemo spremenljivko, ki podaja največjo prodajo do trenutno obravnavanega meseca. Spremenljivko – imenujmo jo najProdaja – na začetku postavimo na vrednost prvega elementa tabele. Nato jo v vsakem koraku zanke primerjamo s trenutnim elementom tabele. Če je trenutni element tabele večji od trenutne vrednosti spremenljivke najProdaja, priredimo trenutni element spremenljivki najProdaja, sicer pa ne naredimo ničesar. Tako dosežemo, da bo spremenljivka najProdaja po vsakem koraku zanke vsebovala doslej največji element, po koncu zanke pa največji element celotne tabele.

Izvedi Počisti



0 1 2 3 4 5 6 7 8 9 10 11
180 250 225 315 328 160 51 36 340 280 378 320
Vrednost spremenljivke prodajaMesec: 180
Vrednost spremenljivke najProdaja: 180