Friday, October 27, 2006

Ф.Пр. домашно I

Функционално програмиране, Домашна работа № 1
(зимен семестър на учебната 2006/2007 г.)
спец. Информатика, III курс, група 8
Задача 1: Да се напишат две процедури – sum-rec и sum-iter, които по зададено естествено число n пресмятат сумата
1/2 + 2/3 + ... +(n-1)/n
съответно използвайки рекурсивен и итеративен процес.
Задача 2:
Да се напише процедурата list-primes, която по зададени естествени числа a и b извежда всички прости числа в интервала [a, b].
Задача 3:
Да се напише процедурата reverse, която обръща цифрите в десетичния запис на дадено естествено число n. (т.е. f(123) = 321)
Задача 4:
Да се напише процедурата list-sum, която по зададени естествени числа a, b и c извежда всички естествени числа от интервала [a, b], за които сумата от цифрите им е равна на c.
Пример:
(list-sum 10 20 5) -> 14
(list-sum 10 50 5) -> 14, 23, 32, 41, 50

Забележка: За извеждане на текст в Scheme може да използвате процедурата display:
(display “Hello World”)
(display x)

No comments: