//Lazarus (free Pascal) uses CRT; Var A,N:int64; i:integer; S,B:string; Begin ClrScr; Write('A = ');ReadLn(A); While A mod 2 = 0 do Begin S:=S+'*2'; A:=A div 2; End; i:=1; N:=trunc(Sqrt(A))+2; Repeat i:=i+2; While A mod i = 0 do Begin Str(i,B); S:=S+'*'+B; A:=A div i; B:='' End; Until i>N; if A <> 1 then Begin Str(A,B); S:=S+'*'+B; End; For i:= 2 to Length(S) do Write(S[i]); ReadKey End.