Вопрос задан 11.04.2019 в 13:42. Предмет Информатика. Спрашивает Леонардыч Евгений.

Дано натуральное число N. Выведите слово YES, если число N является точной степенью двойки, или

слово NO в противном случае. Операцией возведения в степень пользоваться нельзя!
0 1
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Естафьева Соня.
// 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
Отвечает Копылова Алёна.
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

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос