Предмет: Информатика,
автор: XameleonRus
Напишите рекурсивную функцию, которая раскладывает число на простые сомножители.
Пример:
Введите натуральное число: 378
378 = 2*3*3*3*7
Ответы
Автор ответа:
0
Вариант без рекурсии - как просил позже
function factorization ( numeric: integer ): integer;
var d: integer;
begin
write(numeric, ' = 1');
d := 2;
while numeric > 1 do
begin
if numeric mod d = 0 then
begin
write (' * ', d);
numeric := numeric div d;
end
else inc(d);
end;
end;
var x: integer;
begin
write('Введите число: ');
readln(x);
factorization(x);
end.
function factorization ( numeric: integer ): integer;
var d: integer;
begin
write(numeric, ' = 1');
d := 2;
while numeric > 1 do
begin
if numeric mod d = 0 then
begin
write (' * ', d);
numeric := numeric div d;
end
else inc(d);
end;
end;
var x: integer;
begin
write('Введите число: ');
readln(x);
factorization(x);
end.
Похожие вопросы
Предмет: Математика,
автор: stomiik006
Предмет: Қазақ тiлi,
автор: Kasenovruslan487gma
Предмет: Окружающий мир,
автор: Аноним
Предмет: Алгебра,
автор: habibylina86
Предмет: География,
автор: анькаБ