Если число не является степенью числа 2, то вывести об этом сообщение - Free Pascal

Узнай цену своей работы

Формулировка задачи:

Дано целое число N больше 0, являющееся степенью числа 2, F=2 в степени k. Найти целое k - показатель степени. Если число не является степенью числа 2, то вывести об этом сообщение.

Решение задачи: «Если число не является степенью числа 2, то вывести об этом сообщение»

textual
Листинг программы
var n,k,a:integer;
begin
repeat
write('n>0 n=');
readln(n);
until n>0;
a:=1;
k:=0;
while a<n do
 begin
  a:=a*2;
  inc(k);
 end;
if a<>n then write('Число ',n,' не является степенью 2')
else write('Число ',n,' это 2 в степени ',k)
end.

Объяснение кода листинга программы

  1. Ввод числа n с клавиатуры до тех пор, пока не будет введено положительное число.
  2. Инициализация переменных a и k значением 1 и 0 соответственно.
  3. Цикл while, выполняющийся до тех пор, пока значение переменной a меньше n.
  4. Умножение значения переменной a на 2 и увеличение значения переменной k на 1 внутри цикла while.
  5. Проверка после цикла while, если значение переменной a не равно n, то выводится сообщение, что число не является степенью 2.
  6. Если значение переменной a равно n, то выводится сообщение, что число является 2 в степени k.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 3.889 из 5
Похожие ответы