В
Все
М
Математика
А
Английский язык
Х
Химия
Э
Экономика
П
Право
И
Информатика
У
Українська мова
Қ
Қазақ тiлi
О
ОБЖ
Н
Немецкий язык
Б
Беларуская мова
У
Українська література
М
Музыка
П
Психология
А
Алгебра
Л
Литература
Б
Биология
М
МХК
О
Окружающий мир
О
Обществознание
И
История
Г
Геометрия
Ф
Французский язык
Ф
Физика
Д
Другие предметы
Р
Русский язык
Г
География
1232888
1232888
28.11.2022 00:20 •  Информатика

Дано натуральное число n. выведите слово yes, если число n является точной степенью двойки, или слово no в противном случае. операцией возведения в степень пользоваться нельзя!

Показать ответ
Ответ:
228ie228
228ie228
06.10.2020 03:15
// PascalABC.NET 3.2, сборка 1417 от 28.03.2017
// Внимание! Если программа не работает, обновите версию!

begin
  var n:BigInteger;
  if not BigInteger.TryParse(ReadlnString('n='),n) then
    Writeln('Введенное не является целым числом')
  else
    Writeln(n.IsPowerOfTwo?'YES':'NO')
end.

Пример
n= 2037035976334486086268445688409378161051468393665936250636140449354381299763336706183397376
YES
0,0(0 оценок)
Ответ:
ksenia231106
ksenia231106
06.10.2020 03:15
Var A,N:longint;
Begin
Write('N = ');ReadLn(N);
if N mod 2 = 0 then
   Begin
   A:=1;
   While A<N do
      A:=A*2;
   if A=N then Write('YES')
   else Write('NO')
   End
else Write('NO')
End.
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота