codepad
[
create a new paste
]
login
|
about
Language:
C
C++
D
Haskell
Lua
OCaml
PHP
Perl
Plain Text
Python
Ruby
Scheme
Tcl
(define (pi-spigot z) (let loop ((z z) (ds '()) (q 1) (r 0) (t 1) (k 1) (n 3) (m 3)) (cond ((zero? z) (reverse ds)) ((< (+ q q q q r (- t)) (* n t)) (loop (- z 1) (cons n ds) (* 10 q) (* 10 (- r (* n t))) t k (- (quotient (* 10 (+ q q q r)) t) (* 10 n)) m)) (else (loop z ds (* q k) (* (+ q q r) m) (* t m) (+ k 1) (quotient (+ (* q (+ k k k k k k k 2)) (* r m)) (* t m)) (+ m 2)))))) (display (pi-spigot 1001))
Private
[
?
]
Run code