2016-03-27 2 views
1

最終的な数字がセンチネル(999)であるように数字の束を追加したいと思います。 999がタイプされていると、入力ループが終了し、答えが出力されます。そうでなければ、ループが維持され、入力が追加されます。私はプログラムを実行するときしかし、それはエラーを示していますセンチネル制御ループを使って整数を追加して平均化することを試みる

Traceback (most recent call last): 
    File "lab9.py", line 4, in <module> 
    sum += kbInput 
TypeError: unsupported operand type(s) for +=: 'builtin_function_or_method' and 'int' 

コードは以下の通りです:

kbInput = input() 
while int(kbInput) != 999: 
     kbInput = input() 
     sum += kbInput 
     count += 1 
     average = sum/average 
print("Sum", sum) 
print("Average", average) 

答えて

2

sumは、組み込み関数です。名前sum_を使用し、ループの前にゼロに設定します。

sum_ = 0 
count = 0 
while True: 
    kbInput = float(input()) 
    if kbInput == 999: 
     break 
    sum_ += kbInput 
    count += 1 
average = sum_/count 
print("Sum", sum_) 
print("Average", average) 
+0

はミュラー@マイクありがとうございました –

関連する問題