Системное программное обеспечение.
Необходимо написать программу/скрипт, которая переводит входной код программы на выходной.
В качестве кода входной программы выступает урезанный по синтаксису код С++, пример такого кода приведен в файле, его будет вполне достаточно.
Выходной код языка: Pascal или python.
Итоговое ПО должно определить:
Привожу в файле код, которого будет достаточно для выполнения работы.
Также я сделал 1-й пункт на HTML+JS (Можете либо продолжить выполнение на JS, либо переписать на с-подобном языке: Java, C#, C++, python 2.*/3.*)
Лаб 1. Лексический анализ - распарсинг программы, выделение ключевых слов,
идентификаторов и переменных ( построить таблицу)
Лаб 2. Синтаксический анализ - построить дерево разбора по результатам
предыдущей работы, можно сделать попроще. Каждый узел будет классом или
структурой, которая содержит описание конструкции языка - оператор,
переменные, над которыми он выполняется, какие-то атрибуты, и, возможно,
список из таких же структур, если это, например, цикл, чтобы отобразить
вложенность.
Лаб 3. Семантический анализ - проанализировать дерево и поискать
Лаб 4. Синтез. Проанализировать дерево и построить код на выходном языке.
| Гарантия на работу | 1 год |
| Средний балл | 4.54 |
| Стоимость | Назначаете сами |
| Эксперт | Выбираете сами |
| Уникальность работы | от 70% |