Целые числа из промежутка от 100 до 300, у которых сумма делителей равно K - Pascal ABC
Формулировка задачи:
Найти все целые числа из промежутка от 100 до 300, у которых сумма делителей равно K (K вводить с клавиатуры)
Решение задачи: «Целые числа из промежутка от 100 до 300, у которых сумма делителей равно K»
textual
Листинг программы
var k,i,j,s,f:integer; begin write('k='); readln(k); f:=0; writeln('Числа от 100 до 300 у которых сумма делителей=',k); for i:=100 to 300 do begin s:=i+1;//1 и само число for j:=2 to i div 2 do //остальные if i mod j=0 then s:=s+j; if s=k then begin write(i:4); f:=1; end; end; if f=0 then write('Таких чисел нет') end.
Объяснение кода листинга программы
- Переменная k инициализируется значением, введенным пользователем.
- Переменная f устанавливается в 0.
- Выводится сообщение с суммой делителей, которую ищет пользователь.
- Запускается цикл for, который проходит по всем числам от 100 до 300.
- Внутри цикла переменная s инициализируется текущим числом i+1.
- Затем идет вложенный цикл for, который проходит по остальным делителям числа i (от 2 до i/2).
- Если i делится на j без остатка, то переменная s увеличивается на j.
- Если сумма делителей s равна k, то выводится число i и переменная f устанавливается в 1.
- По завершении цикла проверяется значение переменной f.
- Если f равно 0, то выводится сообщение о том, что таких чисел нет.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д