Как решить задачу с помощью цикла for?
Напишите программу, которая считывает последовательность из 10 целых чисел и определяет является ли каждое из них чётным или нет.
На вход подаётся 10 целых чисел, каждое на отдельной строке.
Программа должна вывести строку «YES», если все чётные и «NO» в ином случае.
Ответы (2 шт):
Автор решения: Semitron
→ Ссылка
Используем сигнальную метку, если встретили нечетное число.
flag = 'YES'
for _ in range(10):
a = int(input())
if a % 2 != 0:
flag = 'NO'
print(flag)
Автор решения: Andy Pavlov
→ Ссылка
Вариант решения, через проверку числа на остаток от деления на 2.
def check_nums(nums: list):
print('YES' if not sum([n % 2 for n in nums]) else 'NO')
nums = [1, 2, 4, 2, 2, 4, 10, 12, 14, 20]
check_nums(nums) # NO
nums = [2, 2, 4, 2, 2, 4, 10, 12, 14, 20]
check_nums(nums) # YES
Первое. Собираем список с остатками от деления на 2.
[n % 2 for n in nums]
После суммируем все значения списка через sum(). Если сумма равна нулю, то все числа четные и выводим YES, иначе есть нечетное число и выводим NO
Вариант с последовательным вводом:
nums = []
for _ in range(10):
nums.append(int(input('Введите число:')))
check_nums(nums)