2002 Экзамен (Экзамен (2002))
Описание файла
Файл "2002 Экзамен" внутри архива находится в папке "Экзамен (2002)". Документ из архива "Экзамен (2002)", который расположен в категории "". Всё это находится в предмете "формальные языки и автоматы" из 6 семестр, которые можно найти в файловом архиве МГУ им. Ломоносова. Не смотря на прямую связь этого архива с МГУ им. Ломоносова, его также можно найти и в других разделах. .
Онлайн просмотр документа "2002 Экзамен"
Текст из документа "2002 Экзамен"
Вариант 1
1. Для регулярного выражения над алфавитом T={a, b}:
a(ab|b)*|b
построить эквивалентный детерминированный конечный автомат.
2. Построить эквивалентную LL(1) грамматику для грамматики
S ab | Sc | aS
3. Для арифметического выражения
A+B *(C + D + E * F )
с помощью алгоритма Сети-Ульмана сгенерировать программу и
изобразить атрибутированное дерево.
4. Сгенерировать методом сопоставления образцов оптимальный код для оператора присваивания a = b + c[i + 1]
5. a) Сгенерировать код на командах перехода для выражения
not A and ( B or not C ) and D
b) Построить LR(1) анализатор для грамматики:
S A c, A B b, A B, B b
Вариант 2
1. Для регулярного выражения над алфавитом T={a, b}:
(ba|b)*ba|b
построить эквивалентный детерминированный конечный автомат.
2. Построить эквивалентную LL(1) грамматику для грамматики
S ab | aA
A Ab | b
3. Для арифметического выражения
A*B + C * (D + E) + F
с помощью алгоритма Сети-Ульмана сгенерировать программу и
изобразить атрибутированное дерево.
4. Сгенерировать методом сопоставления образцов оптимальный код для оператора присваивания a[1] = b + c[i]
5. a) Сгенерировать код на командах перехода для выражения
( not A and B ) or ( C and not D )
b) Построить LR(1) анализатор для грамматики:
S A S, A c A, S c, A a
Вариант 3
1. Для регулярного выражения над алфавитом T={a, b}:
(ba|b)*ab|b
построить эквивалентный детерминированный конечный автомат.
2. Построить эквивалентную LL(1) грамматику для грамматики
S ba | baA
A Abc | bS
3. Для арифметического выражения
A*(B + C) + (D + E) * F
с помощью алгоритма Сети-Ульмана сгенерировать программу и
изобразить атрибутированное дерево.
4. Сгенерировать методом сопоставления образцов оптимальный код для оператора присваивания a = b[1] + c[i]
5. a) Сгенерировать код на командах перехода для выражения
A and ( not B or not C ) and D
b) Построить LR(1) анализатор для грамматики:
S c A S, A c A, S c, A a
Вариант 4
1. Для регулярного выражения над алфавитом T={a, b}:
(ab|b*)*ba|b
построить эквивалентный детерминированный конечный автомат.
2. Построить эквивалентную LL(1) грамматику для грамматики
S Sab | A
A ba | bS
3. Для арифметического выражения
A+B * C *D + E * F
с помощью алгоритма Сети-Ульмана сгенерировать программу и
изобразить атрибутированное дерево.
4. Сгенерировать методом сопоставления образцов оптимальный код для оператора присваивания a[1] = b[i + c]
5. a) Сгенерировать код на командах перехода для выражения
not A or B or ( not C and D )
b) Построить LR(1) анализатор для грамматики:
S A c S, A A a, A c, S a
Вариант 5
1. Для регулярного выражения над алфавитом T={a, b}:
(b*a)*ab*a
построить эквивалентный детерминированный конечный автомат.
2. Построить эквивалентную LL(1) грамматику для грамматики
S Sa | A
A baAb | bab
3. Для арифметического выражения
A+B * C *D + E +F
с помощью алгоритма Сети-Ульмана сгенерировать программу и
изобразить атрибутированное дерево.
4. Сгенерировать методом сопоставления образцов оптимальный код для оператора присваивания a = b + c[ i + 1 ]
5. a) Сгенерировать код на командах перехода для выражения
( not C or ( B or not C ) ) and notD
b) Построить LR(1) анализатор для грамматики:
S A c S, S A a, A e
Вариант 5
1. Для регулярного выражения над алфавитом T={a, b}:
(b*a)*ab*a
построить эквивалентный детерминированный конечный автомат.
2. Построить эквивалентную LL(1) грамматику для грамматики
S Sa | A
A baAb | bab
3. Для арифметического выражения
A+B * C *D + E +F
с помощью алгоритма Сети-Ульмана сгенерировать программу и
изобразить атрибутированное дерево.
4. Сгенерировать методом сопоставления образцов оптимальный код для оператора присваивания a = b + c[ i + 1 ]
5. a) Сгенерировать код на командах перехода для выражения
( not C or ( B or not C ) ) and notD
b) Построить LR(1) анализатор для грамматики:
S A c S, S A a, A e