52 lines
1.5 KiB
Plaintext
52 lines
1.5 KiB
Plaintext
(do
|
|
(println "Double")
|
|
(let-rec (
|
|
even (lambda (n) (cond (= 0 n) true
|
|
(= 1 n) false
|
|
true (odd (- n 1))))
|
|
odd (lambda (n) (cond (= 0 n) false
|
|
(= 1 n) true
|
|
true (even (- n 1))))
|
|
)
|
|
(do
|
|
(println (even 7))
|
|
(println (even 8))
|
|
(println (odd 7))
|
|
(println (odd 8))
|
|
)
|
|
)
|
|
|
|
(println "Triple")
|
|
(let-rec (
|
|
first (lambda (n) (cond (= 0 n) true
|
|
(= 1 n) false
|
|
(= 2 n) false
|
|
true (third (- n 1))))
|
|
|
|
second (lambda (n) (cond (= 0 n) false
|
|
(= 1 n) true
|
|
(= 2 n) false
|
|
true (first (- n 1))))
|
|
|
|
third (lambda (n) (cond (= 0 n) false
|
|
(= 1 n) false
|
|
(= 2 n) true
|
|
true (second (- n 1))))
|
|
)
|
|
(do
|
|
(println)
|
|
(println (first 7))
|
|
(println (first 8))
|
|
(println (first 9))
|
|
(println)
|
|
(println (second 7))
|
|
(println (second 8))
|
|
(println (second 9))
|
|
(println)
|
|
(println (third 7))
|
|
(println (third 8))
|
|
(println (third 9))
|
|
)
|
|
)
|
|
)
|