12 lines
492 B
Common Lisp
12 lines
492 B
Common Lisp
(defun fact (n)
|
|
(reduce #'* (loop for i from 1 to n collect i)))
|
|
|
|
(defun left-fac (n)
|
|
(reduce #'+ (loop for i below n collect (fact i))))
|
|
|
|
(format t "0 -> 10~&")
|
|
(format t "~a~&" (loop for i upto 10 collect (left-fac i)))
|
|
(format t "20 -> 110 by 10~&")
|
|
(format t "~{~a~&~}" (loop for i from 20 upto 110 by 10 collect (left-fac i)))
|
|
(format t "1000 -> 10000 by 1000~&")
|
|
(format t "~{~a digits~&~}" (loop for i from 1000 upto 10000 by 1000 collect (length (format nil "~a" (left-fac i)))))
|