Курсовая работа: Лисп-реализация конечных автоматов

; ' end ' – список конечных состояний

; ' move ' – функция смены состояний

; ' text ' – входное слово

; Возвращаемое значение: ' Correct ' – входное слово допустимо

; ' Incorrect ' – входное слово недопустимо

; Алгоритм:

; 1. Лента пуста и

; а. текущее состояние финальное => слово допустимо

; б. текущее состояние не финальное => слово недопустимо

; 2. Текущий символ допустим и лента не пуста => движемся дальше

(defun KA (begin end move text)

(cond

((eq text nil )

(cond

((isOneOf end begin) `Correct)

(T `Incorrect)

)

)

(T (KA (funcall move begin (car text)) end move (cdr text)))

)

)

(setq input_stream (open «d:\\text.txt» :direction:input))

; входное слово

(setq text (read input_stream))

; функция смены состояний

(setq funct (read input_stream))

; начальное состояние

(setq start (read input_stream))

; список конечных состояний

К-во Просмотров: 319
Бесплатно скачать Курсовая работа: Лисп-реализация конечных автоматов