var i, n, nmodi; begin ? n; if n < 0 then n := -n; if n >= 2 then begin i := 2; while i * i <= n do begin nmodi := n - (n / i) * i; if nmodi = 0 then begin n := n / i; ! i; i := 2 end; if nmodi <> 0 then i := i + 1 end; ! n end; end.