Напишите программу, которая вводит натуральное число n и выводит на экран чётные положительные степени числа 2, не большие, чем n , в порядке убывания. входные данные: входная строка содержит одно натуральное число n . выходные данные: программа должна вывести в одну строчку через пробел чётные положительные степени числа 2, не большие, чем n , в порядке убывания. если таких нет, программа должна вывести число 0.
180
239
Ответы на вопрос:
Var n: integer; procedure p(i: integer); begin if (i shr 30 = 0) and (i shl 2 < = n) then p(i shl 2); p(i shl 2); write(i, ' ') end; begin read(n); if n < 4 then write(0) else p(4) end.
Вариант №1 (не совсем удачный, как было отмечено в комментариях). //pascalabc.net (версия 3.1, сборка 1210 от 29.03.2016) var n,i,m: integer; flag: boolean; begin readln(n); flag: =false; if (n mod 2< > 0)then i: =n-1 else i: =n; while i> 0 do begin if power(2,i)< =n then begin write(power(2,i),' '); flag: =true; end; i: =i-2; end; if not flag then writeln(0); end. тест №1 1025 1024 256 64 16 4 тест №2 1 0 вариант №2 var a,i,n: integer; begin a: =1; readln(n); i: =trunc(log2(n)); //получим степень двойки для n //если i нечетное, //то первое искомое число получаем путем сдвига влево на i-1 в //двоичном представлении числа иначе сдвиг на i if (i mod 2)=1 then a: =a shl(i-1) else a: =a shl i; //далее получаем числа сдвигая вправо на 2 разряда //в двоичном представлении числа while a> =2 do begin write(a,' '); a: =a shr 2; end; end. тестовое решение: 2147483647 1073741824 268435456 67108864 16777216 4194304 1048576 262144 65536 16384 4096 1024 256 64 16 4
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Информатика
-
dasssshka113.02.2020 23:04
-
ник493413.02.2020 12:12
-
Aлинa1130.07.2021 19:17
-
nikkovalev19917.07.2021 13:38
-
04789703.09.2021 20:34
-
KiviPlayYT11.06.2022 12:53
-
FiZik1111103215.07.2021 10:39
-
жека12рус01.10.2020 18:25
-
crasnowdim201824.02.2022 02:23
-
Dupper235611.01.2023 00:45
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.