Дано натуральное число n. выведите слово yes, если число n является точной степенью двойки, или слово no в противном случае. операцией возведения в степень пользоваться нельзя!
// 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
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
Оформи подписку