Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Reskov
12 / 12 / 1
Регистрация: 14.12.2009
Сообщений: 33
#1

Вычисление выражение во время выполнения программы - C++

25.12.2009, 01:06. Просмотров 734. Ответов 4
Метки нет (Все метки)

Есть строка типа String например ((A*B)*(C-B*3)-A)*С
нужно вычислить это выражение, причем 'А' .. 'Z' переменные

т.е. нужна функция double eval(String );
с принципом работы таким же как eval в JS

Может кто встречал в интернете готовый пример на с++???
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.12.2009, 01:06     Вычисление выражение во время выполнения программы
Посмотрите здесь:

Уменьшить время выполнения программы - C++
#include <iostream> using namespace std; int main() { int n; cin >> n; char mas; int k;

Создание класса во время выполнения программы - C++
Как создать класс во время выполнения программы? К примеру, поступил запрос на определенное действия, для выполнения действия...

Определить время выполнения этой программы - C++
#include <iostream> #include <conio.h> int main() { std::string str; std::cout << "Type some text: "; ...

Добавить код во время выполнения программы - C++
Возможно ли к программе подключать некоторые модули с кодом(заранее не откомпилированные) по мере её выполнения? Если да, то как?

Как вы тестируете время выполнения программы? - C++
Добрый день. Вопрос к олимпиадникам: как вы тестируете время выполнения ваших программ во время подготовки? Есть какая-нибудь задача и...

Окно программы во время выполнения цикла - C++
Пока выполняется цикл в программе окно становится не доступным. Ни свернуть не переместить и тд. Как с этим бороться? Цикл запускается...

Использование ОСХ во время выполнения программы - C++
Может быть вопрос покажется не совсем по теме форума. Не сможет ли кто-нибудь разъяснить начинающему. Создаем какой-либо ОСХ Затем...

Время выполнения программы равно нулю - C++
#include <stdio.h> #include <stdlib.h> #include <time.h> int main() { clock_t start, end; float i; start =...

Время выполнения куска программы в миллисекундах - C++
Доброго времени суток. Нужен код, позволяющий узнать время выполнения куска кода(желательно в миллисекундах).

Запустить PDF-файл во время выполнения программы - C++
могу ли я как-то запустить PDF файл во время выполнения программы, если да, то как это сделать ?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
odip
Эксперт С++
7155 / 3295 / 59
Регистрация: 17.06.2009
Сообщений: 14,164
25.12.2009, 20:41     Вычисление выражение во время выполнения программы #2
Сам напиши - это не так трудно.
Есть как минимум два способа.
1) Пишется парсер леворекурсивной грамматики.
Заодно этот парсер вычисляет значение выражения во время обратного хода.
2) Выражение преобразуется в обратную польскую запись.
Потом строится вычислитель по обратной польской записи, который считает значение.

Добавлено через 21 секунду
Леворекурсивная грамматика.
То выражение что ты привел относится к ней.
Reskov
12 / 12 / 1
Регистрация: 14.12.2009
Сообщений: 33
25.12.2009, 21:16  [ТС]     Вычисление выражение во время выполнения программы #3
эххх...сам то я могу...но хотелось скинуть эту ношу на плечи кого-нить другога... но видимо да, если хочешь сделать что-то хорошо сделай это сам)))
odip
Эксперт С++
7155 / 3295 / 59
Регистрация: 17.06.2009
Сообщений: 14,164
26.12.2009, 14:32     Вычисление выражение во время выполнения программы #4
Если тебе нужно еще чтобы было хорошо - тогда точно только сам.

А так вообще можно взять какой-нибудь готовый скриптовый язык.
Например LUA - http://www.lua.org/

Добавлено через 2 минуты
Для Qt есть встроенный Qt Script: http://doc.trolltech.com/4.3/qtscript.html
Reskov
12 / 12 / 1
Регистрация: 14.12.2009
Сообщений: 33
27.12.2009, 11:59  [ТС]     Вычисление выражение во время выполнения программы #5
прикольная штука и одна и вторая мне она правда не очень подходит, все равно придется писать самому, но спасибо большое, очень крутая вещь! спс!
Yandex
Объявления
27.12.2009, 11:59     Вычисление выражение во время выполнения программы
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru