Процедура, выводящая на экран все делители переданного ей числа - Pascal ABC
Формулировка задачи:
Напишите процедуру, которая выводит на экран все делители переданного ей числа (в одну строчку)
Решение задачи: «Процедура, выводящая на экран все делители переданного ей числа»
textual
Листинг программы
Program task7; Var i : integer; procedure PrintAllDividers(n : integer; p : integer); Begin if (p <= (n div 2)) then Begin if (n mod p) = 0 then Begin write(p); write(' '); end; PrintAllDividers(n,p+1); end; End; Begin write('i='); readln(i); PrintAllDividers(i,1); writeln; End.
Объяснение кода листинга программы
В данном коде объявлены две переменные: i и n. Затем определен метод PrintAllDividers, который принимает два аргумента: n (целое число) и p (целое число). Если p меньше или равно n/2, то выполняется проверка на делимость n на p. Если n делится на p без остатка, то это число выводится на экран вместе с пробелом. Затем вызывается рекурсивно метод PrintAllDividers для n+1 и p. В основной части кода введено число i, после чего вызывается метод PrintAllDividers для i, начиная с 1. После этого выводится символ новой строки.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д