Program Facteur_Premier ;
Type tab = array [1..100] of integer;
Var fp : tab;
n, i, f : integer;
Begin
Repeat
Writeln('donner un entier entre 2 et 1000');
Readln (n);
until (n>=2) and (n<=1000);
Write(n, ' = ');
i := 2;
f:=0;
Repeat
If (n mod i = 0) Then
Begin
n:= n div i;
f:=f+1;
fp[f] := i;
End
Else i:=i+1;
Until (n=1);
write (fp[1]);
For i:=2 To f Do Write (' * ', fp[i]);
End.
UHJvZ3JhbSBGYWN0ZXVyX1ByZW1pZXIgOwpUeXBlIHRhYiA9IGFycmF5IFsxLi4xMDBdIG9mIGludGVnZXI7ClZhciBmcCA6IHRhYjsKbiwgaSwgZiA6IGludGVnZXI7CkJlZ2luClJlcGVhdApXcml0ZWxuKCdkb25uZXIgdW4gZW50aWVyIGVudHJlIDIgZXQgMTAwMCcpOwpSZWFkbG4gKG4pOwp1bnRpbCAobj49MikgYW5kIChuPD0xMDAwKTsKV3JpdGUobiwgJyA9ICcpOwppIDo9IDI7CmY6PTA7ClJlcGVhdApJZiAobiBtb2QgaSA9IDApIFRoZW4gCkJlZ2luCm46PSBuIGRpdiBpOwpmOj1mKzE7CmZwW2ZdIDo9IGk7CkVuZCAKRWxzZSBpOj1pKzE7ClVudGlsIChuPTEpOwp3cml0ZSAoZnBbMV0pOwpGb3IgaTo9MiBUbyBmIERvIFdyaXRlICgnICogJywgZnBbaV0pOwpFbmQu