воскресенье, 10 ноября 2013 г.

Два алгоритма сложения двух чисел

Иногда наталкиваешься на интересные(придурковатые) алгоритмы и думаешь "вот же люди курят... вот это дурь!". Приведу два алгоритма по сложению двух чисел.

Вариант №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

Комментариев нет: