Найти среднее значение с вводом пользователя при условии, пока пользователь не нажмет ввод без значения - PullRequest
1 голос
/ 14 июля 2020

Я получил проблему с кодом, чтобы найти среднее значение при вводе пользователем. Вот описание

Если пользователь нажимает Enter / return, ничего не набирая, программа останавливается и печатает среднее значение всех заданных чисел. Среднее значение должно быть дано с 2 десятичными знаками.

Чтобы решить эту проблему, я подошел к следующим шагам кода:

count = 0
number = input("")
sum = 0

while True:
    number
    if number != "":
        sum = sum + int(number)
        count += 1
    else:
        break


print(f"Average is {sum/count}")

Однако это не выходит из l oop когда я ничего не печатаю. Пожалуйста, дайте мне знать, какая часть делает этот код бесконечным l oop. Спасибо.

1 Ответ

0 голосов
/ 14 июля 2020

Вы должны запрашивать ввод внутри while l oop, в противном случае вы запрашиваете его только один раз, не обновляя его значение. Вы должны попробовать следующее:

count = 0
sum = 0

while True:
    number = input("")
    if number != "":
        sum = sum + int(number)
        count += 1
    else:
        break


print(f"Average is {sum/count}")

В качестве примера вот быстрое выполнение кода:

10 #Entered 10
35 #Entered 35
15 #Entered 15
   #Pressed Enter without typing anything
Average is 20.0
...