早教吧 育儿知识 作业答案 考试题库 百科 知识分享

pascal阶乘与质因数Description验证任意自然数的阶乘均可表示为任意个素数的乘积的形式.Input只有一行且只有一个正整数:n(2

题目详情
pascal阶乘与质因数
Description
验证任意自然数的阶乘均可表示为任意个素数的乘积的形式.
Input
只有一行且只有一个正整数:n
( 2
▼优质解答
答案和解析
var
f:boolean;
n,i,j,k,l:longint;
a:array[1..100] of longint;
begin
readln(n);
l:=n;
for i:=1 to n do
n:=n*i;
i:=n div 2;j:=0;
repeat
if n mod i = 0 then begin
f:=true;
for k:=2 to trunc(sqrt(i)) do
if i mod k=0 then begin
f:=false;
break;
end;
if f then begin
n:=n div i;
inc(j,1);
a[j]:=i;
end
else dec(i,1);
end
else dec(i,1);
until n=1;
write(l,'!','=');
for i:=j downto 3 do write(a[i],'*');
writeln(a[2]);
end.
望采纳,谢谢!