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

Транслирование строки формулы в набор функций - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Невозможно обратиться к private член, объявленному в классе http://www.cyberforum.ru/cpp-beginners/thread1554516.html
View.h #pragma once #include "Model.h" class View { private: ModelClass model; public: View(ModelClass modelClass);
C++ Работа со строками. Заменить каждую первую букву в словах, начинающихся с гласной буквы на прописную Заменить каждую первую букву в словах, начинающихся с гласной буквы на прописную. Что только не делал, но так и не получилось. Заменяет только в первом слове, а дальше выводит без замены... Помогите пожалуйста составить программу, желательно не замудренную. #include <iostream> #include <conio.h> #include <stdio.h> #include <string.h> using namespace std; http://www.cyberforum.ru/cpp-beginners/thread1554508.html
C++ В двумерном массиве поменять местами наибольший элемент у третьем столбце с наименьшим элементом в пятом
Помогите переделать эту программу чтобы были указатели!! Вот задание: У данном двумерном массиве поменять местами наибольший элемент у третьем столбце с наименьшим элементом в пятом. #include "stdafx.h" #include <iostream> using namespace std; int main()
C++ Как объявить функцию из другого класса в потоке?
Есть функция, которая находится в другом классе. Нужно сделать так, что бы эта функция работала в отдельном потоке: ModelClass modelClass = ModelClass::Instance();//так создаю модель (при помощи паттерна "Одиночка") std::thread playThread(modelClass->Play);//<--знаю, что не будет работать //в классе "ModelClass" есть функция "Play". Ее и надо "крутить" в отдельном потоке. Как это сделать? (в...
C++ Не создается .exe http://www.cyberforum.ru/cpp-beginners/thread1554498.html
Добрый день. Выкидывает вот такую вот ошибку. В коде вроде как ошибок нет. #include "stdafx.h" #include"StdAfx.h" #include<stdlib.h> #include <stdio.h> #include <conio.h> #include<math.h>
C++ Использовать вместо массивов - указатели Помогите переписать, чтоб вместо массивов были показатели! #include <iostream> #include <math.h> using namespace std; int main() { float X; for (int i = 0; i < 15; i++) cin >> X; подробнее

Показать сообщение отдельно
Yaroslaman
1 / 1 / 0
Регистрация: 03.06.2013
Сообщений: 31
17.10.2015, 15:01     Транслирование строки формулы в набор функций
Заголовок темы не совсем верно раскрывает суть вопроса.
Задача: вводим строку форумы (пример y=sin(x)+5. Левый коэф всегда y, т.е. мы его условно отбрасываем, в правой же стороне из неизвестных только x. Нужно составить транслятор из формулы в понятный вид. После чего получить производную данной функции.

Идеи: будем посимвольно перебирать всю функцию, проверям каждый елемент условиями,
1) если цифра
2) если буква, то какая, х или это функция (пример x+3 - переменная, xar(3)+4 - функция)
3) если это функция то за ней должна идти скобка
4) обязательно должен присудтсовать знак *, там где он предполагается быть
.....
5) уйма словий, но они будут решаться впоследствии создания более сложных и обширных функий, тот же логарифм, арккосинусы, степени и другое.

В конце всё будет складываться как дерево, т.е. функция y = sin(x+25^(3*x+exp(10*x))), будет выполняться так
sin (#1)
#1 = x+25^(#2)
#2 = (3*x+#3)
#3 = exp(#4)
#4 = 10*x

Т.е. разбить всё, а после решать с конца, сворачивая все к началу. При этом получать производную от каждой функции. Все производные хранять в бд в ввиде функция - её производная.
UP. Пользователь задает х в самом начале, после выбора необходимой функции из заданого листа, или ввода самостоятельно

Вопросы: явно пример решений должен быть, это какие то трансляторы или что то вроде, которые работают с лексическими фразами и словами.

Был бы рад получить несколько ссылочек или пинок в нужном направлении, поскольку не знаю как правильно сформулировать вопрос для гугла. Возможно Вы с этим сталкивались, тогда Ваши решения или советы были бы кстати.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 10:17. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru