Pascal. Задача 8-19
Разложить целое число на множители.
Решение
var
N, mult : integer;
function Divider(Num : integer) : integer;
var
i, D: integer;
begin
D := 0;
for i := 2 to Round(sqrt(Num)) + 1 do
if Num mod i = 0 then begin
D := i;
break;
end;
if D = 0 then D := Num;
Result := D;
end;
begin
Write('Введите натуральное число: ');
Readln(N);
repeat
mult := Divider(N);
Write(mult);
N := N div mult;
if N > 1 then Write(' * ');
until N = 1;
Writeln();
end.