-3

これは私が解決しなければならない問題です:ユーザーが入力した一連の数値を合計するプログラムを作成します。プログラムは、最初に、合計する数値の数をユーザーに求める必要があります。次に、それぞれの数値を入力し、合計を出力する必要があります。これは私がこれまでに持っているものです:

def excercise13():

print("Programming Excercise 13")
print("This program adds a series of numbers.")
while True:
    try:
        numberTimes = float(input("Enter how many numbers will be added: "))
    except ValueError:
        print("Invalid input.")
    else:
        break
numberTimes = int(numberTimes)
while True:
    try:
        for i in range(1,(numberTimes+1)):
            ("""I don't know what to put here""")
    except ValueError:
        print("Invalid input.")
    else:
        break
totalSum =
print("The sum of",nums,"is:",totalSum)
print()

excercise13()
4

2 に答える 2

0

Pythonには、この機能が関数として組み込まれていsumます。

def makesum():    
    try:
        numbers = input('Enter the numbers to sum, comma seperated: ')
        print 'The sum is {0}'.format(sum(numbers))
    except:
        print 'Input invalid. Try again.'
        makesum()

makesum()
于 2013-02-22T02:35:25.470 に答える
0

私はあなたのコードに基づいて、コードブロックごとに解決策を見ていきます。

def excercise13():

    currentnumber = 0

ここで関数を作成し、0excercise13()に設定しますcurrentnumber

    print("Programming Excercise 13")
    print("This program adds a series of numbers.")
    while True:
        try:
            numberTimes = int(input("Enter how many numbers will be added: "))
        except ValueError:
            print("Invalid input.")
        else:
            break

int代わりに使用する必要がありfloat.ますプロセスを3.5回実行することを想像できますか?これにより、以前の繰り返しも減ります。

    for x in range(numbertimes): #More pythonic way.
        new_number = input ("Please enter a number to be added.")
        currentnumber += new_number

上記のコードブロックにより、プログラムは新しい回数を要求しnumbertimesます。次に、この番号をに追加しますcurrentnumber

    totalSum = currentnumber
    print("The sum of",nums,"is:",totalSum)
    print()

これによりtotalSum、が最終に設定されますcurrentnumber

excercise13()

これにより、コードが開始されます。

于 2013-02-22T02:38:07.807 に答える