2006 Экзамен (Экзамен (2006))
Описание файла
Файл "2006 Экзамен" внутри архива находится в папке "Экзамен (2006)". Документ из архива "Экзамен (2006)", который расположен в категории "". Всё это находится в предмете "формальные языки и автоматы" из 6 семестр, которые можно найти в файловом архиве МГУ им. Ломоносова. Не смотря на прямую связь этого архива с МГУ им. Ломоносова, его также можно найти и в других разделах. .
Онлайн просмотр документа "2006 Экзамен"
Текст из документа "2006 Экзамен"
Вариант 1
1. Для регулярного выражения (1|01)*(0|e)1* над алфавитом T = {0, 1} построить эквивалентный детерминированный конечный автомат.
2. Является ли грамматика G = {{S, A, B, C}, {a, b}, {S A | BC, A a, B b, C AAAS}, S} LR(1)-грамматикой? Построить детерминированный правый анализатор. Продемонстрировать работу анализатора на цепочке baaaa.
3. Для логического выражения (B or (A and not D) and (C or not A) сгенерировать код на командах перехода и изобразить атрибутированное дерево.
4. Являются ли грамматики G1 = {{S, A, B}, {a, b, c}, {S AB, A Aa | B, B Bb | A, C c}, S} и G2 = {{S}, , {S }, S} эквивалентными?
5. Для оператора присваивания a = c[b[3 + j] + 1] сгенерировать оптимальный код методом сопоставления образцов.
Вариант 2
1. Для регулярного выражения (ab|b)*(a|e)c* над алфавитом T = {a, b, c} построить эквивалентный детерминированный конечный автомат.
2. Является ли грамматика G = {{S, A, B}, {a, b, c}, {S aS | AB, A Bc, B Ba | b}, S} LR(1)-грамматикой? Построить детерминированный правый анализатор. Продемонстрировать работу анализатора на цепочке aabcba.
3. Для арифметического выражения [(A * (B - C)) + D * E] * (F + M * G + H) с помощью алгоритма Сети-Ульмана сгенерировать программу и изобразить атрибутированное дерево.
4. Построить множества FIRST и FOLLOW для каждого нетерминала грамматики G = {{S, A, B}, {a, b}, {S ABS | , A abA | a, B Ba | Bab | }, S}. Построить управляющую таблицу LL(1)-анализатора.
5. Для оператора присваивания a = b[2 + с[4]] + j сгенерировать оптимальный код методом сопоставления образцов.
Вариант 3
1. Для регулярного выражения (0)*(1|e)(1|01)* над алфавитом T = {0, 1} построить эквивалентный детерминированный конечный автомат.
2. Является ли грамматика G = {{S, A}, {a,b}, {S aAb, A aaA | }, S} LR(1)-грамматикой? Построить детерминированный правый анализатор. Продемонстрировать работу анализатора на цепочке aaaaab.
3. Для логического выражения not (F or D and not (A and not E)) сгенерировать код на командах перехода и изобразить атрибутированное дерево.
4. Построить приведенную грамматику, эквивалентную грамматике G = {{S, A, B, C}, {b, a}, {S A | B, A aB | bS | b, B AB | Ba, C AS | b}, S}.
5. Для оператора присваивания a = b[b[1 + j] + c[3]] сгенерировать оптимальный код методом сопоставления образцов.
Вариант 4
1. Для регулярного выражения (ab|bb)*(a|e)(ba)* над алфавитом T = {a, b} построить эквивалентный детерминированный конечный автомат.
2. Является ли грамматика G = {{S, A}, {a, b, c}, {S aAS | b, A Aa | c}, S} LR(1)-грамматикой? Построить детерминированный правый анализатор. Продемонстрировать работу анализатора на цепочке acaaab.
3. Для арифметического выражения [(A * B) - (C - D) * E] / (H * H + M) с помощью алгоритма Сети-Ульмана сгенерировать программу и изобразить атрибутированное дерево.
4. Построить множества FIRST и FOLLOW для каждого нетерминала грамматики G = {{S, T}, {a, b, ), (}, {S (SbS) | (T) | a, T TS | S}, S}. Построить управляющую таблицу LL(1)-анализатора.
5. Для оператора присваивания a = b[i[3 + j] + 2] + 2 сгенерировать оптимальный код методом сопоставления образцов.
Вариант 5
1. Для регулярного выражения (1|01)*(0|e)1* над алфавитом T = {0, 1} построить эквивалентный детерминированный конечный автомат.
2. Является ли грамматика G = {{S, A, B, C}, {a, b}, {S A | BC, A a, B b, C AAAS}, S} LR(1)-грамматикой? Построить детерминированный правый анализатор. Продемонстрировать работу анализатора на цепочке baaab.
3. Для логического выражения (A or (B and not C) and (D or not A) сгенерировать код на командах перехода и изобразить атрибутированное дерево.
4. Для грамматики G = {{S, A}, {a, b}, {S Ab, A aA | a}, S} построить эквивалентную LL(1)-грамматику. Для полученной грамматики построить LL(1)-анализатор.
5. Для оператора присваивания a = b[c[2 + j] + 1] сгенерировать оптимальный код методом сопоставления образцов.
Вариант 6
1. Для регулярного выражения (ab|b)*(a|e)c* над алфавитом T = {a, b, c} построить эквивалентный детерминированный конечный автомат.
2. Является ли грамматика G = {{S, A, B}, {a, b, c}, {S aS | AB, A Bc, B Ba | b}, S} LR(1)-грамматикой? Построить детерминированный правый анализатор. Продемонстрировать работу анализатора на цепочке aabcbb.
3. Для арифметического выражения [(A * (B + C)) - D * E] * (F - M * H + G) с помощью алгоритма Сети-Ульмана сгенерировать программу и изобразить атрибутированное дерево.
4. Построить приведенную грамматику, эквивалентную грамматике G = {{S, A, B, C}, {a, b, c}, {S aSb | Abb | , A aBCb | bAb, B AB, C a | c}, S}
5. Для оператора присваивания a = b[3 + с[2]] + i сгенерировать оптимальный код методом сопоставления образцов.
Вариант 7
1. Для регулярного выражения (0)*(1|e)(1|01)* над алфавитом T = {0, 1} построить эквивалентный детерминированный конечный автомат.
2. Является ли грамматика G = {{S, A}, {a,b}, {S aAb, A aaA | }, S} LR(1)-грамматикой? Построить детерминированный правый анализатор. Продемонстрировать работу анализатора на цепочке aaaab.
3. Для логического выражения not (C or D and not (F and not E)) сгенерировать код на командах перехода и изобразить атрибутированное дерево.
4. Для грамматики G = {{S}, {a, b}, {S Sa | Sb | aa | ab}, S} построить эквивалентную LL(1)-грамматику. Для полученной грамматики построить LL(1)-анализатор.
5. Для оператора присваивания a = c[c[1 + j] + b[2]] сгенерировать оптимальный код методом сопоставления образцов.
Вариант 8
1. Для регулярного выражения (ab|bb)*(a|e)(ba)* над алфавитом T = {a, b} построить эквивалентный детерминированный конечный автомат.
2. Является ли грамматика G = {{S, A}, {a, b, c}, {S aAS | b, A Aa | c}, S} LR(1)-грамматикой? Построить детерминированный правый анализатор. Продемонстрировать работу анализатора на цепочке acaaac.
3. Для арифметического выражения [(A * B) + (C + D) * E] / (H * K + M) с помощью алгоритма Сети-Ульмана сгенерировать программу и изобразить атрибутированное дерево.
4. Построить приведенную грамматику, эквивалентную грамматике G = {{S, A, C}, {a, b}, {S b | C, C aC | AC, A aA | Aa | a}, S}.
5. Для оператора присваивания a = b[i[4 + j] + 5] + 1 сгенерировать оптимальный код методом сопоставления образцов.
Вариант 9
1. Для регулярного выражения (1|01)*(0|e)1* над алфавитом T = {0, 1} построить эквивалентный детерминированный конечный автомат.
2. Является ли грамматика G = {{S, A, B, C}, {a, b}, {S A | BC, A a, B b, C AAAS}, S} LR(1)-грамматикой? Построить детерминированный правый анализатор. Продемонстрировать работу анализатора на цепочке baaaa.
3. Для логического выражения (B or (A and not D) and (C or not A) сгенерировать код на командах перехода и изобразить атрибутированное дерево.
4. Являются ли грамматики G1 = {{S, A, B}, {a, b, c}, {S AB, A Aa | B, B Bb | A, C c}, S} и G2 = {{S}, , {S }, S} эквивалентными?
5. Для оператора присваивания a = c[b[3 + j] + 1] сгенерировать оптимальный код методом сопоставления образцов.
Вариант 10
1. Для регулярного выражения (ab|b)*(a|e)c* над алфавитом T = {a, b, c} построить эквивалентный детерминированный конечный автомат.
2. Является ли грамматика G = {{S, A, B}, {a, b, c}, {S aS | AB, A Bc, B Ba | b}, S} LR(1)-грамматикой? Построить детерминированный правый анализатор. Продемонстрировать работу анализатора на цепочке aabcba.
3. Для арифметического выражения [(A * (B - C)) + D * E] * (F + M * G + H) с помощью алгоритма Сети-Ульмана сгенерировать программу и изобразить атрибутированное дерево.
4. Построить множества FIRST и FOLLOW для каждого нетерминала грамматики G = {{S, A, B}, {a, b}, {S ABS | , A abA | a, B Ba | Bab | }, S}. Построить управляющую таблицу LL(1)-анализатора.
5. Для оператора присваивания a = b[2 + с[4]] + j сгенерировать оптимальный код методом сопоставления образцов.
Вариант 11
1. Для регулярного выражения (0)*(1|e)(1|01)* над алфавитом T = {0, 1} построить эквивалентный детерминированный конечный автомат.
2. Является ли грамматика G = {{S, A}, {a,b}, {S aAb, A aaA | }, S} LR(1)-грамматикой? Построить детерминированный правый анализатор. Продемонстрировать работу анализатора на цепочке aaaaab.
3. Для логического выражения not (F or D and not (A and not E)) сгенерировать код на командах перехода и изобразить атрибутированное дерево.
4. Построить приведенную грамматику, эквивалентную грамматике G = {{S, A, B, C}, {b, a}, {S A | B, A aB | bS | b, B AB | Ba, C AS | b}, S}.
5. Для оператора присваивания a = b[b[1 + j] + c[3]] сгенерировать оптимальный код методом сопоставления образцов.
Вариант 12
1. Для регулярного выражения (ab|bb)*(a|e)(ba)* над алфавитом T = {a, b} построить эквивалентный детерминированный конечный автомат.
2. Является ли грамматика G = {{S, A}, {a, b, c}, {S aAS | b, A Aa | c}, S} LR(1)-грамматикой? Построить детерминированный правый анализатор. Продемонстрировать работу анализатора на цепочке acaaab.
3. Для арифметического выражения [(A * B) - (C - D) * E] / (H * H + M) с помощью алгоритма Сети-Ульмана сгенерировать программу и изобразить атрибутированное дерево.
4. Построить множества FIRST и FOLLOW для каждого нетерминала грамматики G = {{S, T}, {a, b, ), (}, {S (SbS) | (T) | a, T TS | S}, S}. Построить управляющую таблицу LL(1)-анализатора.
5. Для оператора присваивания a = b[i[3 + j] + 2] + 2 сгенерировать оптимальный код методом сопоставления образцов.
Вариант 13
1. Для регулярного выражения (1|01)*(0|e)1* над алфавитом T = {0, 1} построить эквивалентный детерминированный конечный автомат.
2. Является ли грамматика G = {{S, A, B, C}, {a, b}, {S A | BC, A a, B b, C AAAS}, S} LR(1)-грамматикой? Построить детерминированный правый анализатор. Продемонстрировать работу анализатора на цепочке baaab.
3. Для логического выражения (A or (B and not C) and (D or not A) сгенерировать код на командах перехода и изобразить атрибутированное дерево.