|
233 / 215 / 63
Регистрация: 01.09.2012
Сообщений: 2,103
|
||||||
лексический анализ01.04.2013, 22:40. Показов 2637. Ответов 14
Метки нет (Все метки)
Добрый вечер всем. У меня такая проблема: мне надо разобрать строку на запчасти. Смысл такой - с клавиатуры вводится многочлен, его надо разобрать на мономы, и сложить их в массив, они нужны мне будут для последующей работы. разобрать вроде получилось, а вот как эти кусочки сложить в массив - пока непонятно. Вот код - подскажите пожалуйста где я опять накосячил.
точнее говоря это черновик кода.
0
|
||||||
| 01.04.2013, 22:40 | |
|
Ответы с готовыми решениями:
14
лексический анализ дубль 2 Лексический и синтаксический анализ текста |
|
29 / 29 / 10
Регистрация: 28.10.2011
Сообщений: 183
|
|
| 01.04.2013, 23:54 | |
|
Писал программу на паскале, которая складывает вычитает и умножает многочлены. Вот, может поможет:
Сложение, вычитание, умножение многочленов Добавлено через 2 минуты типа данных string в Си нет, используйте массив char-ов
1
|
|
|
233 / 215 / 63
Регистрация: 01.09.2012
Сообщений: 2,103
|
||
| 02.04.2013, 00:05 [ТС] | ||
|
за ссылку спасибо, но у меня многочлен от трех переменных, и там придется повозиться... а вообще уже разобрался. теперь другая проблема возникла - разобрать мономы на запчасти, выдернуть коэффициенты и степени по каждой переменной. Но это уже другая история
0
|
||
|
29 / 29 / 10
Регистрация: 28.10.2011
Сообщений: 183
|
|||
| 02.04.2013, 00:20 | |||
|
P.S. Имелось ввиду, что нет стандартной реализации.
0
|
|||
| 02.04.2013, 09:25 | |
|
0
|
|
|
233 / 215 / 63
Регистрация: 01.09.2012
Сообщений: 2,103
|
||||||
| 02.04.2013, 13:21 [ТС] | ||||||
|
почти разобрался - проблема в том, что strtok() не нравится char* ей char s[] = "тра-ля-ля"; подавай, а как заставить ее работать с указателями - вот в чем вопрос. Можно конечно скопировать, но это не выход. Вот последний вариант кода - народ -выручайте
0
|
||||||
|
233 / 215 / 63
Регистрация: 01.09.2012
Сообщений: 2,103
|
|||||||
| 02.04.2013, 13:45 [ТС] | |||||||
|
Герц,
вот с этого кода я брал пример, возможно он не совсем удачный, но...
0
|
|||||||
|
233 / 215 / 63
Регистрация: 01.09.2012
Сообщений: 2,103
|
||||||
| 02.04.2013, 14:25 [ТС] | ||||||
|
да вроде разобрался, теперь проблема как забить подстроки в массив
вот код
0
|
||||||
|
_
317 / 151 / 27
Регистрация: 08.10.2011
Сообщений: 432
|
|
| 02.04.2013, 14:39 | |
|
Ded_Vasilij, у тебя логическая ошибка: ты теряешь первую лексему, полученную в строке 20 т.к. в строке 25 перед занесением ее в массив p снова вызываешь strtok.
1
|
|
|
233 / 215 / 63
Регистрация: 01.09.2012
Сообщений: 2,103
|
|
| 02.04.2013, 14:44 [ТС] | |
|
ya_noob, понял, спасибо, если не сложно - подскажи как правильно сделать - чего то не могу сообразить
0
|
|
|
_
317 / 151 / 27
Регистрация: 08.10.2011
Сообщений: 432
|
|
| 02.04.2013, 15:33 | |
|
серьезная проблема с логикой: особенность strtok в том, что она вместо разделителей лексем + и - вставляет нуль-символы, следовательно теряется знак коэффициента монома, безвозвратно. следовательно нужно отказаться от него.
могу посоветовать посимвольно анализировать выражение. в цикле искать составные части очередного монома: коэффициент со знаком, х и показатель степени, а затем показатель и коэффициент засовывать в массив , например, в виде структуры, или в массив совать коэффициент в позицию, определяемую степенью (если степени маленькие), или вообще вместо массива использовать связный список. вариантов много, все зависит от того, зачем тебе это надо.
0
|
|
|
233 / 215 / 63
Регистрация: 01.09.2012
Сообщений: 2,103
|
||||||
| 02.04.2013, 16:48 [ТС] | ||||||
|
То что теряются коэффициенты монома - ясно, это не проблема, на данном этапе меня волнует другой вопрос - с предыдущей проблемой я разобрался, однако не могу распечатать массив мономов, хотя во время копирования он их выводит. Не могу понять, что не так.
вот код
0
|
||||||
|
_
317 / 151 / 27
Регистрация: 08.10.2011
Сообщений: 432
|
|
| 02.04.2013, 17:45 | |
|
внимательно посмотрите на строку 36
1
|
|
| 02.04.2013, 17:45 | |
|
Помогаю со студенческими работами здесь
15
Лексический анализ. Таблицы идентификаторов Лексический и синтаксический анализ текста Лексический анализ, форма Бекуса-Наура Провести лексический анализ заданного фрагмента и составить кодировочную таблицу Лексический анализатор Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
|
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут.
В век Веб все очень привыкли к дизайну Single-Page-Application .
Быстренько разберем подход "на фреймах".
Мы делаем одну. . .
|