+8 +
/p>
Варіант № 8:
Синтаксичний аналіз пропозицій для регулярної граматики
Варіант № 8
Вихідний файл:
Laba0108.pas або Laba0108.c
Вхідний файл:
input.txt
Вихідний файл:
output.txt
Постановка завдання
Для заданої регулярної граматики написати і налагодити програму синтаксичного аналізу пропозицій породжуваного мови. У ході виконання завдання:
Розробити підпрограми, що забезпечують виділення лексичних одиниць з вхідного пропозиції;
Побудувати в програмі матриці змін станів і виклику підпрограм;
Забезпечити видачу повідомлень про різні види синтаксичних помилок у вхідних пропозиціях
/p>
Позначення термінальних символів при написанні граммматікі:
c - термінальний символ, будь-який символ, крім апострофа і коми;
/p>
Z - > T '
T - >' | T, | Tc | Z '| P'
P - > Z,
Граматика описує пропозиції види: 'слово', ..., 'слово'
У ході розбору пропозиції має бути виконане заповнення масиву S зазначеними символьними константами (без обмежуючих апострофів).
/p>
Введення:
Введення вихідних даних здійснюється з файлу input.txt, який містить один рядок, яка містить пропозицію для розбору.
/p>
Висновок
Для рядка у вхідному файлі програма повинна вивести дві або три рядки рішення згідно следуюшего правилом:
Якщо пропозиція коректне, то програма повинна вивести в перший рядок вихідне вираз, у другий рядок число 0, і в третій рядок значення елементів масиву SS (i) через один пробіл; LI>
Якщо пропозиція некоректне, то програма повинна вивести в перший ...