Jos on kokonislukulista esim. x = [1,2,3,4]annettu parametrina funktiolle niin miten tulostetaan parillisten lukujen summa eli 6
Yksinkertainen tapa: alusta summa nollaksi, käy silmukassa taulukko läpi, tarkasta if-lauseella parillisuus (luvun jakojäännös kahdella), ehdon toteutuessa lisää luku summaan, ja silmukan jälkeen tulosta summa.
Tuottaako jokin tietty kohta vaikeuksia?
Hienompi tapa: tiivistä edellä kuvattu silmukka ja ehto generaattoriksi ja laske siitä summa sum-funktiolla.
summa = 0 for i in lista: if i % 2 == 0: summa = summa+i print summa
Tulostus on
0
6
14
24
58
60
60
60
Mutta pitää saada tulostettua vaan tuo 60 eli lopputulos?
Nyt tulostat summan silmukan sisällä (heti jokaisen if-lauseen jälkeen). Tulosta summa vasta koko silmukan jälkeen eli siirrä print-komento samalle tasolle kuin for-silmukka (eli vähennä rivin sisennystä yksi taso).
Thx :)
Aihe on jo aika vanha, joten et voi enää vastata siihen.