Напишите программу, которая вводит натуральное число N и выводит на экран чётные положительные степени числа 2, не большие, чем N , в порядке убывания. Входные данные: Входная строка содержит одно натуральное число N . Выходные данные: Программа должна вывести в одну строчку через пробел чётные положительные степени числа 2, не большие, чем N , в порядке убывания. Если таких нет, программа должна вывести число 0.
N = int(input()) result = [] power = 1 while 2**power <= N: if 2**power % 2 == 0: result.append(2**power) power += 1 if len(result) > 0: print(' '.join(map(str, result[::-1]))) else: print(0)
Пример работы программы: Input: 50 Output: 32 16 8 4 2
Пример решения на Python:
N = int(input())result = []
power = 1
while 2**power <= N:
if 2**power % 2 == 0:
result.append(2**power)
power += 1
if len(result) > 0:
print(' '.join(map(str, result[::-1])))
else:
print(0)
Пример работы программы:
Input: 50
Output: 32 16 8 4 2