Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
43
Добавлен:
23.03.2015
Размер:
28.16 Кб
Скачать

1.1 Формулировка задания:

Необходимо разработать распознаватель для следующей символьной цепочки: <цепочка>::=<условный оператор> <условие>: =<идентификатор> <оператор1>::=<оператор присваивания>

<выражение>::=<вызов подпрограммы>

<список параметров>: :=<идентификатор> <оператор2>::=<вызов подпрограммы>

<список параметров ::=<целая константа> Символьная цепочка задается с помощью форм Бэкуса-Наура. Примеры допустимых цепочек if Cond then Al:=Func(id); if Cond then myvar:=foo(idl) else proc(2); if Cond then samp:=func3(idl) else proc(-32);

1.2. Описание входных и выходных данных

Описание входных данных:

Цепочка записана в текстовом файле INPUT.TXT, который состоит из одной строки.

Описание выходных данных

Результат распознавания записан в текстовый файл OUTPUT .TXT

В нем записаны все результаты полученные в ходе выполнения программы, т.е. результаты работы каждого модуля. В последней строке записано одно из следующих сообщений: ACCEPT, если цепочка допустима, и REJECT, если цепочка недопустима.

1.3. Примеры входных и выходных данных

Пример 1.

Входные данные: Файл INPUT.TXT If Cond then myvar:=foo(idl) else proc(2); Выходные данные

Файл OUTPUT.TXT:

Символьная цепочка:

if Cond then myvar:=foo(idl) else proc(2); Блок транслитерации:

(i, буква)

(f, буква)

(, пробел)

(С,буква)

(о, буква)

(n, буква)

(d, буква)

(, пробел)

(t, буква)

(h, буква)

(е, буква)

(n, буква)

(, пробел)

(m,буква)

(у, буква)

(v, буква)

(а, буква)

(r, буква)

(:, двоеточие)

(=,равно)

(f, буква)

(о, буква)

Соседние файлы в папке Полина отчет