RosettaCodeData/Task/Prime-decomposition/Racket/prime-decomposition-2.rkt

8 lines
213 B
Racket
Raw Permalink Normal View History

2013-06-05 21:47:54 +00:00
#lang racket
(define (factors number)
(let loop ([n number] [i 2])
(if (= n 1)
'()
(let-values ([(q r) (quotient/remainder n i)])
(if (zero? r) (cons i (loop q i)) (loop n (add1 i)))))))