[MD-sorular] 2 tabanında 10! (Common Lisp versiyonu)
Haldun Bayhantopcu
hbayhantopcu at gmail.com
29 Nis 2005 Cum 16:00:49 EEST
(defun binary (n)
(labels ((binary-aux (n)
(if (<= n 1)
(list n)
(cons (mod n 2) (binary-aux (floor (/ n 2)))))))
(nreverse (binary-aux n))))
(defun binary-with-digit-nums (n)
(let ((b (binary n)))
(values b (length b))))
(defun ! (n)
(labels ((f (n) (if (<= n 1) 1 (* n (f (- n 1))))))
(f n)))
(defun binary-with-digit-nums (n)
(let ((b (binary n)))
(values b (length b))))
10!'in 2 tabanında nasıl yazıldığı ve kaç basamaklı olduğunu öğrenmek
için:
> (binary-with-digit-nums (! 10))
(1 1 0 1 1 1 0 1 0 1 1 1 1 1 0 0 0 0 0 0 0 0)
22
-- Haldun
MD-sorular mesaj listesiyle ilgili
daha fazla bilgi