Условие: Найти все простые делители натурального числа n.
Технические условия: Стандартные.
Примеры входных и выходных файлов: Отсутствуют.
Решение: Идея решения. Напрашивается очевидное решение: найти все делители и выбрать из них простые числа (как?). Однако красивее поступить иначе. Делим число n на 2, пока делится нацело, если разделилось хоть раз- число 2 - делитель (простой!), а n присваиваем результат деления. Увеличиваем делитель на 1 и начинаем сначала... Так поступаем до тех пор, пока число не станет равным 1.
var n,i:longint; begin write('Введите число...'); readln(n); write('Делители числа ',n,' : '); i:=2; while n<>1 do begin if n mod i = 0 then begin write(i,' '); repeat n:=n div i until n mod i <> 0; end; inc(i); end; end.