(define (div dividend divisor) (if (= (remainder dividend divisor) 0) (div (/ dividend divisor) divisor) dividend)) (display (let* ((n (read)) (s (exact-integer-sqrt n))) (do ((i 2 (+ i 1))) ((or (= (div n i) 1) (> i s)) (if (> i s) n i)) (set! n (div n i))))) (newline)