Moro!
Ensimmäinen viikko tutustuttu ohjelmoinnin maailmaan ja koulutehtävää koskien kaipailisin apuja.
Ohjelma:
kysyy rajattoman määrän lukuja, joista lasketaan "exit"-komennon jälkeen keskiarvo. Inputtiin täytyy pystyä syöttämään myös tekstiä, jolloin ohjelma kohteliaasti kehottaa jatkamaan numeroilla ja tuo while-loop jatkuisi edellä mainitulla tavalla.
Haasteeksi tuli nyt tekstin syötön jälkeinen palautus jatkamaan numeroiden syöttöä/laskemista.
Kiitos jo etukäteen ammattitaidosta!
print('Wanna count multiple numbers?') #Intro
Syöttö = ""
Syöttö = input('''Type as many numbers as you want.
To end the program write "exit":''', )
Syötettu_luku = 0
Yhteensä = 0.0
try:
while not Syöttö == "exit": #Luvunsyöttöloop
Syötettu_luku +=1
Syötetty_arvo = int(Syöttö)
Yhteensä += Syötetty_arvo
Syöttö = input('''Gimme more.
To end the program write "exit"
------------------------:''', )
if Syöttö =="exit": #Ohjelman lopetus/lasku
print("you gave", Syötettu_luku, "numbers.")
print("Of those average is: ", (Yhteensä) / Syötettu_luku)
except:
Syöttö = str("")
print("That is not a number")
Syöttö = input("Please continue with numbers:")Laita toi "try except" whilen sisään, niin sitten jatkuu poikkeuksesta huolimatta. Kannatta myös miettiä noiden muuttujien nimeämistä, niin koodista voi saada joku muukin selvää mitä se tekee. Eli Syötettu_luku on nyt todellisuudessa syötetty määrä.
Nythän toi ensimmäinen pyyntö ei ees oo try:n sisällä.
Grez kirjoitti:
(10.02.2019 08:09:18): Laita toi "try except" whilen sisään, niin...
Kiitos vastauksesta ja vinkistä. Ohjelma toimii ja muuttujat nimetty järkevämmin.
Aihe on jo aika vanha, joten et voi enää vastata siihen.