По данному числу N распечатайте все целые степени двойки, не превосходящие N, в порядке...

0 голосов
288 просмотров

По данному числу N распечатайте все целые степени двойки, не превосходящие N, в порядке возрастания.

Операцией возведения в степень пользоваться нельзя!

Входные данные
Вводится натуральное число.

Выходные данные
Выведите ответ на задачу.

Примеры
входные данные
50
выходные данные
1 2 4 8 16 32


Информатика (113 баллов) | 288 просмотров
Дано ответов: 2
0 голосов
Правильный ответ

// PascalABC.NET 3.1, сборка 1256 от 21.06.2016
begin
  var n:=ReadInteger;
  1.Iterate(k->2*k).TakeWhile(x->x<=n).Println;<br>end.

Тестовое решение
50
1 2 4 8 16 32

(142k баллов)
0 голосов

Var n,st:integer;
begin
write('n = '); readln(n);
st:=1;
while st<=n do<br> begin
 write(st,' ');
 st:=st*2;
 end;
writeln;
end.

Пример:
n = 50
1 2 4 8 16 32 

(194k баллов)