|
0 / 0 / 0
Регистрация: 06.11.2015
Сообщений: 63
|
||||||
Лексический анализатор02.02.2019, 21:35. Показов 5010. Ответов 1
Метки нет (Все метки)
Здравствуйте.
написать программу, которая выполняет лексический анализ входного текста в соответствии с заданием и порождает таблицу лексем с указанием их типов и значений. Программа должна выдавать сообщения о наличие во входном тексте ошибок,которые могут быть обнаружены на этапе лексического анализа. У меня проблема с кодом,с чтением литералов -‘%’789/456*123-0.=+, не понимаю, как сделать анализатор чтобы читал их..... Я буду благодарен, если поможете. читаемый текст: constructor TCalculator.Init; constKeyChar: array[0..19] of Char = 'C'#27'%'#241'789/456*123-0.=+'; var I: Integer; P: PView; R: TRect; Begin R.Assign(5, 3, 29, 18); inherited Init(R, 'Calculator'); Options := Options or ofFirstClick; for I := 0 to 19 do P:=New(PButton, cmCalcButton); P^.Options := P^.Options and not ofSelectable; Insert(P); R.Assign(3, 2, 21, 3); Insert(New(PCalcDisplay, Init(R))); End; Keywords: constructor, const, array, var, Begin, inherited, for, do, new, ad, of, char, Integer, PView, TRect, Assign, or, to, do, and, not, End ID: TCalculator, Init, I,KeyChar, P, R, Options, ofFirstClick, New, PButton, cmCalcButton, ofSelectable, Insert, PCalcDisplay Delimiter: [ ], =, :=, ( ),^; : .. # . Number: 0, 19, 5, 3, 29, 18, 2, 21, 27, 241 Literal: ‘C’, ‘%’789/456*123-0.=+, Calculator грамматика: <ID>::=letter | <ID>letter <NUM>::=digit | <NUM>digit <DELIMITER>::=[| ] |= |(| )| ^| ;| :| # |. <DELIMITER2>::= <POINT>. |<COLON> = <POINT>::=. <COLON>::=:
0
|
||||||
| 02.02.2019, 21:35 | |
|
Ответы с готовыми решениями:
1
Лексический анализатор Лексический анализатор
|
|
1469 / 1010 / 456
Регистрация: 30.10.2017
Сообщений: 2,799
|
|
| 03.02.2019, 02:34 | |
|
У Страуструпа в книге довольно подробно расписан процесс разработки калькулятора с использованием грамматик.
http://www.stroustrup.com/Prog... 7/e7-1.cpp
0
|
|
| 03.02.2019, 02:34 | |
|
Помогаю со студенческими работами здесь
2
лексический анализатор на С++ Лексический анализатор текста Лексический, синтаксический анализатор c++ Лексический анализатор языка лисп
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога
Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
|
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
|
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога
Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
|
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога
Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
|
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|