![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 02.10.2011
Сообщений: 32
|
![]()
Уважаемые.Прошу помощи...Есть у меня строка из чисел, а в ней разделители "+" или "*".Нужно подсчитать значение выражения.
|
![]() |
![]() |
![]() |
#2 |
Форумчанин
Регистрация: 13.12.2007
Сообщений: 788
|
![]()
самый простой алгоритм:
1) Ищешь знаки "*" 2) Выделяешь по числу слева и справа от него (либо до другого знака, либо до конца/начала строки если число первое/последнее) 3) Часть строки (два числа+знак) заменяешь результатом операции (1 число * 2 число - перевести в строку), т.е. 1+2*3+4 станет 1+6+4 4) Продолжаешь это пока не закончатся знаки "*" Затем то же самое повторяешь с +, в итоге получишь значение выражения
благодарность - сюда (не забываем писать от кого)
|
![]() |
![]() |
![]() |
#3 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,830
|
![]()
в делфиворлд есть готовый парсер
|
![]() |
![]() |
![]() |
#4 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
![]()
полностью готовый самописный парсер математических выражений для "чистого" Pascal Exprus я тут на форуме пару раз уже выкладывал. Он небольшой, простой, "понимает" не только сложение и умножение, но и вычитание и деление, поддерживаются круглые скобки для изменения стандартного приоритета выполнения операций.
но, в данном случае, я полностью согласен с Zer0. Зачем "стрелять из пушки по воробьям" ? Если банального парсинга строки и двух проходов здесь вполне хватит. впрочем, конечно, выбор должен сделать TC. |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Pascal. Строки | zzzarazzza | Помощь студентам | 3 | 10.11.2010 00:04 |
Строки (Pascal) | Ногин Антон | Помощь студентам | 9 | 24.09.2010 12:44 |
Строки. Pascal | Feran | Помощь студентам | 1 | 05.04.2010 11:06 |
Pascal.Строки | blondinochka | Помощь студентам | 3 | 04.06.2009 16:44 |
Pascal. Строки | blondinochka | Помощь студентам | 2 | 30.05.2009 18:44 |