Функциональное и логическое программирование

 















Функциональное и логическое программирование


1. Цель работы

алгоритм лямбда программа

Ознакомление с лямбда-выражениями и функциями языка Lisp.

Задание

Разработать функцию, производящую удаление из исходного списка всех элементов с четными номерами.

Например:

Вход: (a b c d e).

Выход: (a c e).

Допускается использовать любые предопределённые функции Lisp.


. Описание алгоритма решения задачи



. Описание функций


Описание стандартных функций

DEFUN - порождающая функция, позволяет создавать функции.

COND - На вход она принимает n - пар предикат - значение. Сначала просматриваются все предикаты в порядке следования, и если хоть один из них истинный, то cond возвращает результат, связанный с этим предикатом. Если ни один предикат не был истинным, то она вернет NIL.

NULL - Если значение единственного аргумента функции есть Nil, то функция возвращает T. Во всех остальных случаях (когда значение аргумента НЕ есть Nil, функция возвращает Nil.

описание пользовательских функций.- eventh - функция удаляющая чётные елементы из списка.

Код программы


(defun drop-eventh (w &optional f)

(cond ((null w) nil)

(f (drop-eventh (cdr w) nil))

((cons (car w) (drop-eventh (cdr w) t)))))

(drop-eventh `(a b c d e))


Вывод

алгоритм функция программа

В данной работе были изучены лямбда-выражения и функции языка Lisp, которые могут быть использованы в базах данных больниц и институтов.


Список литературы


1.http://lisper.ru

2.http://homelisp.ru/help/lisp.html


Функциональное и логическое программирование 1. Цель работы алгоритм лямбда программа Озна

Больше работ по теме:

КОНТАКТНЫЙ EMAIL: [email protected]

Скачать реферат © 2017 | Пользовательское соглашение

Скачать      Реферат

ПРОФЕССИОНАЛЬНАЯ ПОМОЩЬ СТУДЕНТАМ