|
279 / 39 / 13
Регистрация: 11.10.2015
Сообщений: 405
|
|||||||||||
Парсер арифметических выражений20.07.2017, 22:01. Показов 7642. Ответов 33
Метки нет (Все метки)
Пишу парсер мат. выражений. Столкнулся с проблемкой: как обозначить унарные операции + и - ?
Есть мапа приоритетов:
Добавлено через 1 минуту Так же хотелось узнать стоит ли туда запихивать различные мат.функции и лепить им приоритет? Добавлено через 43 секунды
0
|
|||||||||||
| 20.07.2017, 22:01 | |
|
Ответы с готовыми решениями:
33
Парсер арифметических выражений Реализовать парсер арифметических выражений (файловый ввод/вывод, задача №80 acmp) Написать парсер математических выражений с функцией упрощения этих выражений |
|
279 / 39 / 13
Регистрация: 11.10.2015
Сообщений: 405
|
|
| 22.07.2017, 16:24 [ТС] | |
|
0
|
|
|
2784 / 1937 / 570
Регистрация: 05.06.2014
Сообщений: 5,602
|
||
| 22.07.2017, 16:38 | ||
|
0
|
||
|
279 / 39 / 13
Регистрация: 11.10.2015
Сообщений: 405
|
|
| 22.07.2017, 18:41 [ТС] | |
|
Renji, ну хз... по-моему проще к плюсику/минусику скобочки подрисовать, чем отдельную мапу городить или фабрику перестраивать
Добавлено через 1 минуту Renji, да мне самому этот вариант оч не нравится, но пока так оставлю, потом под енамы переделаю, не хочу зацикливаться на этом задании
0
|
|
|
279 / 39 / 13
Регистрация: 11.10.2015
Сообщений: 405
|
|
| 25.07.2017, 17:06 [ТС] | |
|
Вот получил более менее неплохой парсер. Результат:
0
|
|
|
279 / 39 / 13
Регистрация: 11.10.2015
Сообщений: 405
|
||
| 28.07.2017, 00:23 [ТС] | ||
|
почему бы как в нормальных языках сделать pop не void непонятно...
0
|
||
|
Заблокирован
|
|||
| 28.07.2017, 00:34 | |||
T stack::pop() невозможно предоставить такие гарантии.
0
|
|||
|
2784 / 1937 / 570
Регистрация: 05.06.2014
Сообщений: 5,602
|
||
| 28.07.2017, 00:41 | ||
|
0
|
||
|
279 / 39 / 13
Регистрация: 11.10.2015
Сообщений: 405
|
|
| 28.07.2017, 13:16 [ТС] | |
|
daun-autist, как минимум ява или шарп, pop там не void
0
|
|
|
Заблокирован
|
||
| 28.07.2017, 13:31 | ||
|
zarko97, ну так там копирования объектов нет, там только ссылки передаются и возвращаются из функций. Исключений при копировании ссылок не получишь.
В общем, читай http://www.gotw.ca/gotw/008.htm. Там ответ на вопрос "почему pop возвращает void". Добавлено через 8 минут T Stack::pop() нельзя предоставить strong exception safety guarantees по ссылке не объясняется.
1
|
||
|
279 / 39 / 13
Регистрация: 11.10.2015
Сообщений: 405
|
|
| 28.07.2017, 15:38 [ТС] | |
|
Renji, а как по вашему отлов ошибок организовать? в ходе вычисления или сделать независимый цикл и там проверять?
0
|
|
|
2784 / 1937 / 570
Регистрация: 05.06.2014
Сообщений: 5,602
|
|||||||
| 28.07.2017, 16:18 | |||||||
0
|
|||||||
|
279 / 39 / 13
Регистрация: 11.10.2015
Сообщений: 405
|
||||||
| 29.07.2017, 15:59 [ТС] | ||||||
|
Renji, вот более-менее полубыдлосорс
0
|
||||||
|
279 / 39 / 13
Регистрация: 11.10.2015
Сообщений: 405
|
||||||
| 31.07.2017, 22:18 [ТС] | ||||||
|
up
0
|
||||||
|
279 / 39 / 13
Регистрация: 11.10.2015
Сообщений: 405
|
|
| 31.07.2017, 23:20 [ТС] | |
|
result:
0
|
|
| 31.07.2017, 23:20 | |
|
Помогаю со студенческими работами здесь
34
Вычисление арифметических выражений Распараллеливание арифметических выражений Вычисление арифметических выражений Табулирование арифметических выражений Разбор арифметических выражений Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
| Опции темы | |
|
|
Новые блоги и статьи
|
|||
|
[golang] Угол между стрелками часов
alhaos 12.05.2026
По заданным значениям часа и минуты необходимо определить значение меньшего угла между стрелками аналогового циферблата часов.
import "math"
func angleClock(hour int, minutes int) float64 {
. . .
|
Debian 13: Установка Lazarus QT5
ВитГо 09.05.2026
Эта инструкция моя компиляция инструкций volvo
https:/ / www. cyberforum. ru/ blogs/ 203668/ 10753. html
и его же старой инструкции по установке Lazarus с gtk2. . .
|
Нейросеть на алгоритме "эстафета хвоста" как перспектива.
Hrethgir 06.05.2026
На десерт, когда запущу сервер.
Статья тут https:/ / habr. com/ ru/ articles/ 1030914/ . Автор я сам, нейросеть только помогает в вопросах которые мне не известны - не знаю людей которые знали-бы. . .
|
Асинхронный приём данных из COM-порта
Argus19 01.05.2026
Асинхронный приём данных из COM-порта
Купил на aliexpress термопринтер QR701. Он оказался странным. Поключил к Arduino Nano. Был очень удивлён. Наотрез отказывается печатать русские буквы. Чтобы. . .
|
|
попытка написать игровой сервер на C++
pyirrlicht 29.04.2026
попытка написать игровой сервер на плюсах с открытым бесконечным миром.
возможно получится прикрутить интерпретатор питон для кастомизации игровой логики.
что есть на текущий момент:. . .
|
Контроль уникальности выбранного документа-основания при изменении реквизита
Maks 28.04.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРемонтСпецтехники", разработанного в КА2.
Задача: уведомлять пользователя, если указанная заявка (документ-основание). . .
|
Благородство как наказание
Maks 24.04.2026
У хорошего человека отношения с женщинами всегда складываются трудно. А я человек хороший. Заявляю без тени смущения, потому что гордиться тут нечем. От хорошего человека ждут соответствующего. . .
|
Валидация и контроль данных табличной части документа перед записью
Maks 22.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в КА2.
Задача: контроль и валидация данных табличной части документа перед записью с учетом регламента компании. . .
|