Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: Python: Apuja pythoniin

mapa16 [10.02.2019 00:08:53]

#

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:")

Grez [10.02.2019 08:09:18]

#

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ä.

mapa16 [10.02.2019 12:06:18]

#

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.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta