Найти все целые делители числа, кроме 1 и его самого - Pascal
Формулировка задачи:
Для введенного с клавиатуры произвольного целого числа определить все возможные целые делители, кроме 1 и самого числа. Если число не имеет таких делителей, сообщить об этом. (Например: для 20 – 2,4,5,10; для 21 - 3,7; для 23 – «нет делителей»).
Решение задачи: «Найти все целые делители числа, кроме 1 и его самого»
textual
Листинг программы
var n,i,c:longint; begin write('n='); readln(n); write(n,':'); for i:=2 to abs(n div 2)+1 do if n mod i=0 then begin write(i,' '); c:=c+1; end; if c=0 then writeln('no divisors'); readln; end.
Объяснение кода листинга программы
- Переменная
n
- хранит введенное пользователем число. - Переменная
i
- используется в цикле для перебора всех чисел от 2 до abs(n div 2) + 1. - Переменная
c
- хранит количество делителей. - Пользователю выводится приглашение на ввод числа с помощью команды
write('n=')
. - Введенное пользователем число сохраняется в переменной
n
с помощью командыreadln(n)
. - Выводится сообщение вида
число :
с использованием командыwrite(n,':')
. - В цикле происходит перебор чисел от 2 до abs(n div 2) + 1 с помощью команды
for i:=2 to abs(n div 2)+1 do
. - Проверяется, делится ли число
n
наi
без остатка с помощью условияif n mod i=0 then begin
. - Если число делится на
i
без остатка, тоi
выводится на экран с помощью командыwrite(i,' ')
, а переменнаяc
увеличивается на 1. - Если переменная
c
равна 0, то выводится сообщениеno divisors
с помощью командыwriteln('no divisors')
. - Завершение программы с ожиданием нажатия клавиши
readln
.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д