Условие
Выведите все четные элементы списка. При этом используйте цикл for
, перебирающий элементы списка, а не их индексы!
Решение
s=input() a=[int(s) for s in s.split()] for i in a: if int(i)%2 == 0: print(i, end=' ')
Выведите все четные элементы списка. При этом используйте цикл for
, перебирающий элементы списка, а не их индексы!
s=input() a=[int(s) for s in s.split()] for i in a: if int(i)%2 == 0: print(i, end=' ')
Немного проще:
a = input().split()
for i in range(0, len(a)):
if int(a[i]) % 2 == 0:
print(a[i], end=' ')
В задании сказано, что нужно использовать перебор списка а не индекса
Странно, в условии сказано - перебирайте элементы, а не индексы, а в решении автор перебирает все-таки индексы! Да и решение неправильное в целом, сказано же - четные элементы, а вовсе не элементы с четными номерами. Скажем, из строки исходных данных "1 2 3 4 10 11 13 17 19" эта программа выберет числа 1,3,10,13,17,19, а по смыслу задачи это должно быть 2,4,10.
Вот как надо:
ar = [int(s) for s in input().split()]
print(*[k for k in ar if k %2 ==0])