Olympic Bac Giang - 2012 - Bai 3.
Lập trình để phân tích một số thành tích các số nguyên tố
Giải
Var n,i,m: Longint; Ok: boolean;
Function IsPrime(n:Longint):Boolean;
Begin
Ok:=True;
If (n=1) Then Ok:=False
Else For i:=2 to (n-1) Do
If n mod I=0 Then Ok:=False;
IsPrime:=Ok;
End;
BEGIN
Write(' Cho n = ');Readln(n); i:=1;
Write('=> ',n,' duoc phan tich nhu sau: ',n, ' = ');
While (i<=n) do
Begin
If (IsPrime(i)) And (n Mod i = 0) Then
Begin
n:=n div i;
If (n=1) Then write(i)
Else Write(i,'*');
End
Else i:=i+1;
End; Readln;
End.
No comments:
Post a Comment
Cảm ơn bạn đã nhận xét