RosettaCodeData/Task/Van-der-Corput-sequence/Racket/van-der-corput-sequence-2.rkt
Ingy döt Net 776bba907c Sync
2013-10-27 22:24:23 +00:00

7 lines
295 B
Racket

#lang racket
(define (digit-length n base)
(if (< n base) 1 (add1 (digit-length (quotient n base) base))))
(define (digit n i base)
(remainder (quotient n (expt base i)) base))
(define (van-der-Corput n base)
(for/sum ([i (digit-length n base)]) (/ (digit n i base) (expt base (+ i 1)))))