Advertisement
Guest User

Untitled

a guest
Nov 10th, 2018
105
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. (defn tri*
  2.   "Generates lazy sequence of triangular number"
  3.   ([] (tri* 0 1))
  4.   ([sum n]
  5.    (let [new-sum (+ sum n)]
  6.      (cons new-sum (lazy-seq (tri* new-sum (inc n)))))))
  7.  
  8. (def tri (tri*))
  9.  
  10. (defn triangular?
  11.   "Is the number traingular? e.g. 1, 3, 6"
  12.   [n]
  13.   (= n (last (take-while #(>= n %) tri))))
  14.  
  15. (dotimes [n 1000]
  16.   (println (triangular? (rand-int 500000000))))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement