Tälläinen koodi:
# -*- coding: cp1252 -*-
def tulostaja():
print("Oletustulostus")
def main():
jatku = True
while jatku:
syote = input("Anna syöte (Lopeta Lopettaa): ")
if syote == "Lopeta":
jatku = False
break
elif len(syote) > 4:
print(syote)
elif len(syote) < 5:
tulostaja()
if __name__=="__main__":
main()Miksi ohjelma ei lopu "Lopeta" komennolla jos koodi on näinpäin:
if len(syote) > 4:
print(syote)
elif len(syote) < 5:
tulostaja()
elif syote == "Lopeta":
jatku = False
breakEli "lopeta" komento on elif muodossa? Tällöin tulee vaan "Anna syöte (Lopeta Lopettaa):"
Tuossa syote -pituus on 6 eli ensimmäinen vertailu toteutuu. Jos ensimmäinen toteutuu, niin elif -osia ei enää suoriteta.
TapaniS kirjoitti:
Tuossa syote -pituus on 6 eli ensimmäinen vertailu toteutuu. Jos ensimmäinen toteutuu, niin elif -osia ei enää suoriteta.
Aivan niinhän se on. Kiitos tästä.
Aihe on jo aika vanha, joten et voi enää vastata siihen.