Интерпретация математической формулы(C++).
Программа должна строить график функции. Уравнение функции пользователь задает в виде строки.
Вся сложность в переводе строки в алгоритм вычисления значений функции.
Как это реализовать?
Автомат разберет уравнение, коэффициенты которого будет полезно занести в вектор (возмжно, вместе с показателями степеней или другими функциями, как exp, например). Затем эти значения можно использовать в вычислении значений функции для точек графика.
Цитата: Kostyan777
Пишу программу на C++(среда Borland C++ 3.1)
Программа должна строить график функции. Уравнение функции пользователь задает в виде строки.
Вся сложность в переводе строки в алгоритм вычисления значений функции.
Как это реализовать?
Программа должна строить график функции. Уравнение функции пользователь задает в виде строки.
Вся сложность в переводе строки в алгоритм вычисления значений функции.
Как это реализовать?
Помнится когда-то в школе делал что-то аналогичное.
Правда алгоритм был колхозный, но чего уж там...
Я просто посимвольно анализировал всю строку, искал внутренние скобки, выбирал операцию (+, -, sin, и т.д.) и параметр(ы) (числа), предварительно заменив символ переменной на ее численное значение.
Сами внутренние скобки так-же заменял на результат ее вычисления. и т.д.
Если кому интересно, могу поискать исходники :)
Цитата: wAngel
Если кому интересно, могу поискать исходники :)
Выкладывай =) пригодятся!!
Цитата: wAngel
Я просто посимвольно анализировал всю строку, искал внутренние скобки, выбирал операцию (+, -, sin, и т.д.) и параметр(ы) (числа), предварительно заменив символ переменной на ее численное значение.
Сами внутренние скобки так-же заменял на результат ее вычисления. и т.д.
Определять каждую точку графика таким способом долго:(
Цитата: wAngel
Если кому интересно, могу поискать исходники :)
Выкладывай! :)
http://sources.ru/vb/vb_calculator.shtml
Написана на Visual Basic, но я думаю будет несложно перевести на C++
Может Вам это пригодится
Написана на Visual Basic, но я думаю будет несложно перевести на C++
Цитата: Kostyan777
Определять каждую точку графика таким способом долго
Ну тогда остаётся вариант написать прогу для построения графика без формулы, а другая прога будет подставлять в ту прогу формулу, компилить прогу и запускать.