Иногда наталкиваешься на интересные(придурковатые) алгоритмы и думаешь "вот же люди курят... вот это дурь!". Приведу два алгоритма по сложению двух чисел.
Вариант №1:
(define (+ a b)
(if (= a 0)
b
(inc (+ (dec a) b))))
Вариант №1:
(define (+ a b)
(if (= a 0)
b
(inc (+ (dec a) b))))
Вариант №2:
(define (+ a b)
(if (= a 0)
b
(+ (dec a) (inc b))))
Здесь inc/dec - увеличение на 1/уменьшение на 1
Источник : SICP
Комментариев нет:
Отправить комментарий