Listan suurimman alkion löytämiseen on Pythonissa näppärä tapa
max()
-funktio. Kokeile kuitenkin silmukan, apumuuttujien
ja ehtolauseiden avulla selvittää seuraavan listan suurin alkio.
numerotaulukko[0]
. Muista tarkistaa jokaisen alkion
kohdalla, onko kyseinen alkio "tämän hetken suurinta" suurempi.
numerotaulukko = [9, 12, 45, 173, 91, 70, 3, 64, 823, 84, 654, 0, 190, 154]
numerotaulukko = [9, 12, 45, 173, 91, 70, 3, 64, 823, 84, 654, 0, 190, 154]
suurin = numerotaulukko[0] # Oletetaan aluksi, että ensimmäinen alkio on suurin
for alkio in numerotaulukko: # Käydään taulukkoa läpi alkio kerrallaan
if alkio > suurin: # Jos alkio on suurempi, kuin edellinen suurin,
suurin = alkio # niin alkio sijoitetaan "suurin"-muuttujaan
# Tulostetaan suurin
print(suurin)
Portieeri eli kansankielellä portsari tarkoittaa ovimiestä tai eteisvahtimestaria. Eteisvahtimestarin työnkuvaan kuuluu tarkistaa ikä ravintolaan saapuessa. Kirjoita ohjelma joka kysyy käyttäjältä ikää. Ohjelma tulostaa:
HUOM! Kun otat kiinni käyttäjän syötettä tulee se aina
merkkijonona. Merkkijono tulee muuttaa luku-tyyppiseksi, jotta sitä
voi vertailla toiseen lukuun.
Esim:
luku = input("anna luku:")
luku-muuttuja on merkkijono. Mutta
luku = int(input("anna luku:"))
luku-muuttuja on kokonaisluku.
# Kysytään käyttäjän ikä ja otetaan se talteen syötteestä kokonaislukuna
ika = int(input("Kerroppas ikäsi: "))
# Jos ikä on tasan 18 -> toivotetaan onnea ja tervetuloa
if ika == 18:
print("Onnea ja tervetuloa")
# Jos ikä on yli 18, niin ainoastaan tervetulo-toivotukset
elif ika > 18:
print("Tervetuloa")
# Muuten ei päästä sisään -> käyttäjä on alle 18-vuotias
else:
print("Eipäs hoppuilla")
Tehtävänäsi on kirjoittaa ohjelma, joka kysyy käyttäjältä numeroita siihen asti, kunnes käyttäjä syöttää merkkijonon "stop". Tämän jälkeen ohjelma laskee ne yhteen ja tulostaa summan.
# Alustetaan summa alussa nollaksi
summa = 0
# while True silmukkaa pyöritetään ikuisuuksiin, kunnes
# sieltä tahdotaan breakata ulos
while True:
syote = input("Anna luku: ") # Pyydetään käyttäjältä lukua
if syote == "stop":
break # Jos käyttä syöttää merkkijonon "stop" breakataan ulos silmukasta
else:
summa += int(syote) # Muuten lisäillään syötteen luku kokonaislukuna mukaan summaan
# Tulostetaan lopussa summa nätisti konsoliin str()-funktio
# muuttaa kokonaisluvun tulostettavaan muotoon merkkijonon kanssa.
print("Lukujen summa oli: " + str(summa))