Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
13
Task/Almost-prime/Common-Lisp/almost-prime.lisp
Normal file
13
Task/Almost-prime/Common-Lisp/almost-prime.lisp
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
(defun start ()
|
||||
(loop for k from 1 to 5
|
||||
do (format t "k = ~a: ~a~%" k (collect-k-almost-prime k))))
|
||||
|
||||
(defun collect-k-almost-prime (k &optional (d 2) (lst nil))
|
||||
(cond ((= (length lst) 10) (reverse lst))
|
||||
((= (?-primality d) k) (collect-k-almost-prime k (+ d 1) (cons d lst)))
|
||||
(t (collect-k-almost-prime k (+ d 1) lst))))
|
||||
|
||||
(defun ?-primality (n &optional (d 2) (c 0))
|
||||
(cond ((> d (isqrt n)) (+ c 1))
|
||||
((zerop (rem n d)) (?-primality (/ n d) d (+ c 1)))
|
||||
(t (?-primality n (+ d 1) c))))
|
||||
Loading…
Add table
Add a link
Reference in a new issue