codepad
[
create a new paste
]
login
|
about
Language:
C
C++
D
Haskell
Lua
OCaml
PHP
Perl
Plain Text
Python
Ruby
Scheme
Tcl
; crossing hands (define (range . args) (case (length args) ((1) (range 0 (car args) (if (negative? (car args)) -1 1))) ((2) (range (car args) (cadr args) (if (< (car args) (cadr args)) 1 -1))) ((3) (let ((le? (if (negative? (caddr args)) >= <=))) (let loop ((x(car args)) (xs '())) (if (le? (cadr args) x) (reverse xs) (loop (+ x (caddr args)) (cons x xs)))))) (else (error 'range "unrecognized arguments")))) (define (sec->hms sec) (let* ((h (quotient (floor sec) 3600)) (m (quotient (- (floor sec) (* h 3600)) 60)) (s (- sec (* h 3600) (* m 60)))) (list h m (round s)))) (for-each (lambda (sec) (display (sec->hms sec)) (newline)) (map (lambda (s) (* s 43200 (/ 11))) (range 11)))
Private
[
?
]
Run code
Submit