Количество делителей числа - Pascal ABC

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

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

Дано целое число А. Найти количество делителей данного числа.

Решение задачи: «Количество делителей числа»

textual
Листинг программы
var n,i,j,k,max,maxn:integer;
begin
write('n=');
readln(n);
if n=1 then k:=1
else
 begin
  k:=2;//1 и само
  for i:=2 to trunc(sqrt(n)) do//считаем делители до корня из числа и умножаем на 2
  if n mod i=0 then inc(k,2);
  if frac(sqrt(n))=0 then dec(k);//если число полный квадрат, то минус 1
 end;
write('Количество делителей=',k);
end.

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

  1. Переменные n, i, j, k, max, maxn:integer; объявляются и инициализируются значениями типа integer.
  2. Выводится запрос на ввод значения переменной n.
  3. Если n равно 1, то значение переменной k устанавливается равным 1.
  4. В противном случае, значение переменной k устанавливается равным 2.
  5. Затем происходит цикл, который выполняется от 2 до округленного значения корня из n.
  6. Внутри цикла проверяется, делится ли n на i без остатка. Если да, то значение переменной k увеличивается на 2, если нет, то значение переменной k увеличивается на 1.
  7. Если дробная часть корня из n равна нулю, то значение переменной k уменьшается на 1.
  8. После завершения цикла выводится сообщение о количестве делителей числа n, которое сохраняется в переменной k.

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


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

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

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