Решение упражнения 2.7 из SICP

18 January, 2008 (21:34) | Решения упражнений

После слегка головоломного упражнения 2.6 (кстати, всем, кто его не делал, рекомендую) в этом упражнении можно расслабиться. Имея определение make-interval, введенное в упражнении

(define (make-interval a b) (cons a b))

и предполагая, что нижняя граница интервала идет первым параметром, а верхняя вторым, мы можем легко записать селекторы таким образом:

(define (lower-bound interval) (car interval))
(define (upper-bound interval) (cdr interval))

Comments

Comment from nobody
Date: July 5, 2008, 11:54 pm

и предполагая, что нижняя граница интервала идет первым параметром, а верхняя вторым

Мы это не предполагаем, это следует из текста процедуры add-interval:

(define (add-interval x y)
(make-interval (+ (lower-bound x) (lower-bound y))
(+ (upper-bound x) (upper-bound y))))

Write a comment