Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/3: Рейтинг темы: голосов - 3, средняя оценка - 5.00
1 / 1 / 0
Регистрация: 03.06.2013
Сообщений: 31
1

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

17.10.2015, 15:01. Показов 545. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Заголовок темы не совсем верно раскрывает суть вопроса.
Задача: вводим строку форумы (пример 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. Пользователь задает х в самом начале, после выбора необходимой функции из заданого листа, или ввода самостоятельно

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

Был бы рад получить несколько ссылочек или пинок в нужном направлении, поскольку не знаю как правильно сформулировать вопрос для гугла. Возможно Вы с этим сталкивались, тогда Ваши решения или советы были бы кстати.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.10.2015, 15:01
Ответы с готовыми решениями:

Описать структуру Account, а также набор функций для работы с ней
Реализовать в struct счет (Account), а так же набор функций для работы с ним (пополнение, просмотр,...

Куда помещать набор свой набор процедур и функций?
В какую папку в Pascal SchoolPak поместить .pas файл, чтобы он потом в .tpu преобразовался?

Набор невычислимой формулы
Возможно ли в MatCad Prime набрать формулу просто не для вычисления, а как в Ворде?? Пробовал...

Транслирование строк
<?php $string = "транслит"; $array_symbols = preg_split('//u', $string, -1, PREG_SPLIT_NO_EMPTY);...

1
3176 / 1935 / 312
Регистрация: 27.08.2010
Сообщений: 5,131
Записей в блоге: 1
17.10.2015, 17:50 2
Цитата Сообщение от Yaroslaman Посмотреть сообщение
сформулировать вопрос для гугла
Symbolic computation
0
17.10.2015, 17:50
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
17.10.2015, 17:50
Помогаю со студенческими работами здесь

Не Большой Набор Полезных Функций
Функция проверки на наличие не запрещенных символов в поле, где ? - запрещенные символы Function...

библиотека, расширяющая набор функций
Здравствуйте, у меня тут задача на создание библиотеки... А я даже не знаю как она выглядит=)...

Рекуррентные формулы функций
Здравствуйте! Решал как-то я интегральные уравнения численными методами, но возникла ошибка: на...

Подскажите формулы элементарных функций
Подскажите формулы элементарных функций в Pascal'е . По примеру синусоиды...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru