Курсовая работа: ЛИСП-реализация основных операций над базами данных
Рисунок 3 – Блок-схема решения задачи для функции GET_PEOPLE_PAYMANT
Рисунок 4 – Блок-схема решения задачи для функции CHANGE_DATA
Рисунок 5 – Блок-схема решения задачи для функции GET_PEOPLE
4 Программная реализация решения задачи
;ПОЛУЧАЕМ ИЗ ФАЙЛА СПИСОК СОТРУДНИКОВ
(SETF EMPLOYEE 0)
(SETQ INPUT_STREAM (OPEN " D:\\EMPLOYEE.TXT" :DIRECTION :INPUT))
(SETQ EMPLOYEE (READ INPUT_STREAM))
(CLOSE INPUT_STREAM)
;ОСНОВНЫЕ ОПЕРАЦИИ: ВСТАВКА, УДАЛЕНИЕ, ВЫБОРКА, ИЗМЕНЕНИЕ
;ВСТАВКА
(DEFUN INSERT (POS LST AT)
(COND
((NULL LST) (CONS AT NIL))
((EQL POS 0) (CONS AT LST))
(T (CONS (CAR LST) (INSERT (- POS 1) (CDR LST) AT)))
)
)
;ВСТАВКА ЭЛЕМЕНТА AT В ПОЗИЦИЮ POS СПИСКА LST
;УДАЛЕНИЕ
(DEFUN DELETE (FM LST)
(COND
((NULL LST) NIL)
((EQL FM (CAR (CAR LST))) (CDR LST))
(T (CONS (CAR LST) (DELETE FM (CDR LST))))
)
)