Программа на Python (Python Playground) завершается с ошибкой. Что не так?
s=0
k=0
n=int(input())
while n!=0:
s+=1
if n%2==0:
k+=n
n=int(input())
print(k)
print(s)
Вывод:
Traceback (most recent call last):
File "/home/main.py", line 3, in <module>
n=int(input())
EOFError: EOF when reading a line</parameter>
Ошибка EOFError на строке
Есть и ошибка в самом коде: строка n=int(input()) (строка if n%. Если число нечётное, новое число не считывается, и цикл while зациклится на одном и том же n бесконечно. Строку if, то есть внутрь цикла while, но не внутрь if:
s=
k=
n=int(input())
while n!= :
s+=
if n% == :
k+=n
n=int(input())
print(k)
print(s)
Пример ввода в STDIN (каждое число с новой строки):
Вывод:
input() ждёт данные из STDIN; если их нет, возникает EOFError. Чтение следующего числа должно выполняться на каждой итерации цикла, поэтому оно стоит на одном уровне с if, а не внутри него.
- Поле STDIN пустое: программе нечего читать, отсюда EOFError. Введите числа по одному в строке, последнее —
. - Строку
n=int(input())в цикле надо сдвинуть влево, на уровеньif, иначе при нечётном числе цикл будет бесконечным.
