Однопроходный/двухпроходный транслятор с языка математических выражений на язык деревьев вывода
Состав работы
|
|
|
|
Работа представляет собой zip архив с файлами (распаковать онлайн), которые открываются в программах:
- Microsoft Word
Описание
Цель данной курсовой работы:
– изучение принципов построения трансляторов
– написание на языке C++ класса, реализующего следующие действия над математическими выражениями:
– лексический анализ
– синтаксический анализ
– вычисление значения
– написание транслятора с языка математических выражений на язык деревьев вывода
– написание интерпретатора языка деревьев вывода
Теоретическое введение
Теория построения трансляторов используется во многих областях, связанных с программным обеспечением. Важность этой темы можно проиллюстрировать на примере языка высокого уровня C++: для разработки программы на C++ требуется гораздо меньше времени, чем на языках более низкого уровня.
Формальные грамматики
Формальное определение грамматики. Форма Бэкуса–Наура
Грамматика – это описание способа построения предложений некоторого языка. Иными словами, грамматика – это математическая система, определяющая язык. Фактически, определив грамматику языка, мы указываем правила порождения цепочек символов, принадлежащих этому языку. Таким образом, грамматика – это генератор цепочек языка.
Правило (или продукция) – это упорядоченная пара цепочек символов (α, β). В правилах важен порядок цепочек, поэтому их чаще записывают в виде α → β (или α::= β). Такая запись читается как «α порождает β» или «β по определению есть α».
Грамматика языка программирования содержит правила двух типов: первые (определяющие синтаксические конструкции языка) довольно легко поддаются формальному описанию; вторые (определяющие семантические ограничения языка) обычно излагаются в неформальной форме. Поэтому любое описание (или стандарт) языка программирования обычно состоит из двух частей: вначале формально излагаются правила построения синтаксических конструкций, а потом на естественном языке дается описание семантических правил.
– изучение принципов построения трансляторов
– написание на языке C++ класса, реализующего следующие действия над математическими выражениями:
– лексический анализ
– синтаксический анализ
– вычисление значения
– написание транслятора с языка математических выражений на язык деревьев вывода
– написание интерпретатора языка деревьев вывода
Теоретическое введение
Теория построения трансляторов используется во многих областях, связанных с программным обеспечением. Важность этой темы можно проиллюстрировать на примере языка высокого уровня C++: для разработки программы на C++ требуется гораздо меньше времени, чем на языках более низкого уровня.
Формальные грамматики
Формальное определение грамматики. Форма Бэкуса–Наура
Грамматика – это описание способа построения предложений некоторого языка. Иными словами, грамматика – это математическая система, определяющая язык. Фактически, определив грамматику языка, мы указываем правила порождения цепочек символов, принадлежащих этому языку. Таким образом, грамматика – это генератор цепочек языка.
Правило (или продукция) – это упорядоченная пара цепочек символов (α, β). В правилах важен порядок цепочек, поэтому их чаще записывают в виде α → β (или α::= β). Такая запись читается как «α порождает β» или «β по определению есть α».
Грамматика языка программирования содержит правила двух типов: первые (определяющие синтаксические конструкции языка) довольно легко поддаются формальному описанию; вторые (определяющие семантические ограничения языка) обычно излагаются в неформальной форме. Поэтому любое описание (или стандарт) языка программирования обычно состоит из двух частей: вначале формально излагаются правила построения синтаксических конструкций, а потом на естественном языке дается описание семантических правил.
Другие работы
Контрольная работа по дисциплине "Экономическая информатика". Вариант №10
flewaway
: 4 января 2017
Вариант №10
Теоретический вопрос:
Создание таблицы в текстовом редакторе Word
Задача:
Разработать базу данных для хранения нижеследующих данных.
Автомобильная мастерская: автомобили и их ремонт
150 руб.
Анализ рынка косметических продуктов по уходу за руками
evelin
: 9 октября 2013
1 Ситуационный анализ
1.1 Размер и тенденции рынка
1.2 Информация о фирме
1.3 Информация о конкурентах
1.4 Информация о продукте. Средства-заменители основных конкурентов, их достоинства и недостатки
1.5 Аудитории и группы общественности
2 SWOT анализ
3 Анализ потребительских мнений
4 Проблемы и задачи с точки зрения маркетинга. Постановка коммуникационных целей и задач
5 Стратегия и тактика сообщений
6 Стратегия и тактика элементов комплекса продвижения
1 Ситуационный анализ
1.1 Раз
5 руб.
Задачник по гидравлике с примерами расчетов СГАСУ Задача 1.1 Вариант 10
Z24
: 14 октября 2025
Определить плотность жидкости, полученной смешиванием жидкости объемом V1, плотностью ρ1 и жидкости объемом V2, плотностью ρ2.
120 руб.
Лабораторная работа №6.8 по дисциплине "Физика". 2-й семестр, 4-й вариант
rt
: 25 января 2017
1. Цель работы
Изучить зависимость электропроводности полупроводникового образца от температуры. Определить ширину запрещенной зоны.
2. Теоретическое введение
Электропроводность материалов определяется выражением:
(1)
где q+ и q- - соответственно величина заряда положительных и отрицательных носителей элек-трического заряда, n+ и n- - концентрация соответственно положительных и отрицательных но-сителей заряда, µ+ и µ- - подвижности положительных и отрицательных носителей заряда.
В нашей задач
30 руб.