Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- (fact (primefactors 1) => (list))
- (fact (primefactors 2) => (list 2))
- (fact (primefactors 3) => (list 3))
- (fact (primefactors 4) => (list 2 2))
- (defn primefactors
- ([n] (primefactors n 2))
- ([n candidate]
- (cond (<= n 1) (list)
- (= 0 (rem n candidate)) (conj (primefactors (/ n candidate)) candidate)
- :else (primefactors n (inc candidate))
- )
- )
- )
- (fact (primefactors 1000001) => (list 101 9901))
- (defn primefactors
- ([n]
- (primefactors n 2 '()))
- ([n candidate acc]
- (cond (<= n 1) (reverse acc)
- (zero? (rem n candidate)) (recur (/ n candidate) candidate (cons candidate acc))
- :else (recur n (inc candidate) acc))))
- (defn primefactors
- ([n] (primefactors n 2 '()))
- ([n candidate acc]
- ...)
- (primefactors n (inc candidate))
- (recur n (inc candidate))
- (primefactors (/ n candidate))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement