Розробка програми із застосовуючими функціоналами

Страницы работы

Уважаемые коллеги! Предлагаем вам разработку программного обеспечения под ключ.

Опытные программисты сделают для вас мобильное приложение, нейронную сеть, систему искусственного интеллекта, SaaS-сервис, производственную систему, внедрят или разработают ERP/CRM, запустят стартап.

Сферы - промышленность, ритейл, производственные компании, стартапы, финансы и другие направления.

Языки программирования: Java, PHP, Ruby, C++, .NET, Python, Go, Kotlin, Swift, React Native, Flutter и многие другие.

Всегда на связи. Соблюдаем сроки. Предложим адекватную конкурентную цену.

Заходите к нам на сайт и пишите, с удовольствием вам во всем поможем.

Содержание работы

Лабораторна робота №5

Застосування функціоналів.

Ціль роботи: засвоїти розробку програм з застосовуючими функціоналами.

Задача: написати програму, виконуючу необхідні дії. В програмі використати функціонали EVAL, FUNCALL, APPLY.

Приклади:

1. Построїти список результатів виконання функцій із заданого списку S з параметрами X Y:

(defun p(S X Y )(COND ((NULL S) NIL)

  (T(CONS (FUNCALL (CAR S) X Y)(P (CDR S) X Y)))    ) )

2. Функція зі списку функцій L, з параметрами X Y, яка приймає при даному значенни аргументів задане значення: А.

(DEFUN CC(L X Y А)(COND ((NULL L ) NIL)

((= А  (CAR (P L X Y )) ) (CAR  L  ))

(T( CC (CDR L) X Y А)) )).

Зі списка  функцій відібрати в окремий список ті, результати

виконання котрих при заданому аргументі розташовані за убиванням.

(setq l (list 'f1 'f2 'f3 'f4 'f5 'f6 'f7))

(defun f1(x) (+ x 4) )

(defun f2(x) (+ x 5) )

(defun f3(x) (+ x 2) )

(defun f4(x) (+ x 1) )

(defun f5(x) (+ x 6) )

(defun f6(x) (+ x 5) )

(defun f7(x) (+ x 7) )

(defun ff(L y z) (cond ( (NULL L)     nil)

( (<= (funcall (car L) y) z)

       (cons (funcall (car L) y) (ff (cdr L) y (funcall (car L) y))))

( t   (ff (cdr L) y z) )) )

(defun s (x) (cons (funcall (car L) x)( ff (cdr l) x (funcall (car L) x))) )

Результати роботи програми:

> (s 1)

(5 3 2)

Похожие материалы

Информация о работе

Уважаемые коллеги! Предлагаем вам разработку программного обеспечения под ключ.

Опытные программисты сделают для вас мобильное приложение, нейронную сеть, систему искусственного интеллекта, SaaS-сервис, производственную систему, внедрят или разработают ERP/CRM, запустят стартап.

Сферы - промышленность, ритейл, производственные компании, стартапы, финансы и другие направления.

Языки программирования: Java, PHP, Ruby, C++, .NET, Python, Go, Kotlin, Swift, React Native, Flutter и многие другие.

Всегда на связи. Соблюдаем сроки. Предложим адекватную конкурентную цену.

Заходите к нам на сайт и пишите, с удовольствием вам во всем поможем.