эта программа должна находиться в цикле, пока входной сигнал не равен -1. Если входной сигнал равен -1, программа должна выполнять среднее значение входных данных. Я не могу понять, как использовать переменные и как рассчитать среднее значение.
это мой код
count = 0
sum = 0
adad = input ('enter a number:')
for i in adad:
print (i)
while i != -1 :
print (i)
count = count + 1
sum = sum + int(i)
print (sum / count)
но он не может показать мне те результаты, которые я хочу
с помощью цикла while
вы можете продолжать непрерывно принимать пользовательский ввод до тех пор, пока -1 не будет задано, и достичь с его помощью своей цели, как показано ниже.
# your code goes here
count = 0
avg = 0
total_sum = 0
while True:
user_input = int(input("enter a number: "))
if user_input == -1:
if count == 0: count = 1
avg = total_sum / count
break
total_sum += user_input
count += 1
print(f"avg is {avg}")
Надеюсь, это вам поможет.
count = 0
sum = 0
while True:
user_input = int(input('Enter a number(-1 to end): '))
if user_input == -1:
break
sum += user_input
count += 1
print (sum / count)
Я инициализировал две переменные для суммы входных данных и количества входных данных. Использование концепции, аналогичной циклу do-while
, который запускается и проверяет условие, является ли число -1, и если это так, то цикл while прерывается. Ввод преобразуется в целое число с помощью int(...)
Вы также можете попробовать приведенный ниже код.
input_arr = []
while True:
user_input = int(input('Enter a number(-1 to end): '))
if user_input == -1:
break
input_arr.append(user_input)
print (sum(input_arr) / len(input_arr))
a = 0 #loop count
b = 0 #sum
x = 0 #input
while (x!=-1):
x = int(input("enter a number: "))
b = b+x
a = a+1
print((b+1)/(a-1))
Благодарим вас за вклад в сообщество Stack Overflow. Возможно, это правильный ответ, но было бы очень полезно предоставить дополнительные пояснения к вашему коду, чтобы разработчики могли понять ваши рассуждения. Это особенно полезно для новых разработчиков, которые не так хорошо знакомы с синтаксисом или пытаются понять концепции. Не могли бы вы отредактировать свой ответ, включив в него дополнительную информацию на благо сообщества?
ввод возвращает строку; текст. Если вам нужен номер, вам нужно преобразовать его с помощью
int(...)
. Кроме того, если вы хотите принять несколько входных данных,input
также должен находиться внутри цикла.