1. Реализирайте функция (abs x) за намиране на абсолютна стойност на число
2. Реализирайте функция (solve a b c) за намиране на корен на квадратното уравнение ax2 + bx + c = 0. Обърнете специално внимание на случаите, когато a = 0. Използвайте помощна функция (discr a b c) за пресмятане на дискриминантата
3. Напишете функция (home? x y), която проверява дали дадена точка е в къщата:
Задача 4
4. Какви са оценките на изразите:
(+), (*), +, '+, ((+)), (if (> 7 5) (+ 2 3) (/ 4 0))

5. Нека са дефинирани следните функции
(define (f x) (+ (f x) 1)))
(define (g x) (g (+ x 1)))
Какъв е резултатът от оценката на (f 0) и (g 0)? Каква е разликата при оценката на тези изрази?

6. Нека е дефинирана функцията
(define (h x y) (if (> x 5) (+ y 2) (- x 3)))
Каква е оценката на израза (h 5 (f 0))? Каква е разликата при използването на call-by-value и call-by-name?
Last modified: Saturday, 12 November 2011, 5:38 PM