![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
Пингвина |
|
|||
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 15.11.2006 Репутация: нет Всего: нет |
вот задали курсовую написать... хорошо бы, если бы помогли. нигде ничего в инете найти не могу! помогите, что ли...
|
|||
|
||||
Partizan |
|
|||
![]() Let's do some .NET ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2828 Регистрация: 19.12.2005 Где: Санкт-Петербург Репутация: 4 Всего: 67 |
ну а что... алгоритм прост....
1. нужен анализатор(парсер) математического выражения....можно использовать обратную польскую нотацию см www.algolist.ru 2. используешь численные методы нахождения интегралов.... -------------------- СУВ, Partizan. |
|||
|
||||
Sartorius |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1568 Регистрация: 18.7.2006 Где: Ivory tower Репутация: 8 Всего: 37 |
Partizan, как я понял ("символьный решатель интегралов") человеку нужно не определенный интеграл численно посчитать, а найти вид первообразной ф-ии (для простых случаев) .
Пингвина, так??? ![]() |
|||
|
||||
Partizan |
|
|||
![]() Let's do some .NET ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2828 Регистрация: 19.12.2005 Где: Санкт-Петербург Репутация: 4 Всего: 67 |
Sartorius, =) ну если так , то задача сводится к вбиванию "базы" простых первообразных =)
-------------------- СУВ, Partizan. |
|||
|
||||
IvanoffAndrey |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 157 Регистрация: 8.7.2006 Где: СГАУ Репутация: нет Всего: 2 |
Вспомнил - данный пример разобран в Книге Архангельского "Приемы программирования в Delphi 5-7" - прямо есть то что нужно. Если книгу в нете не найдешь отпишись помагу.
--------------------
Размерность пространства есть число Pi и в каждой точке вселенной оно стремиться к этому числу. |
|||
|
||||
Пингвина |
|
|||
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 15.11.2006 Репутация: нет Всего: нет |
Partizan, да, именно это препод и хочет увидеть
Добавлено @ 20:04 Partizan, если бы еще показали как это будет выглядеть! и еще вывод результата как написать???????? |
|||
|
||||
Partizan |
|
||||
![]() Let's do some .NET ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2828 Регистрация: 19.12.2005 Где: Санкт-Петербург Репутация: 4 Всего: 67 |
и всё -таки что конкретно от вас хотят?
или
Это сообщение отредактировал(а) Partizan - 17.11.2006, 22:33 -------------------- СУВ, Partizan. |
||||
|
|||||
albertn |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 368 Регистрация: 17.7.2006 Где: г. Ставрополь Репутация: нет Всего: 34 |
Не все так просто. Можно конечно записать несколько частных случаев интегралов и потом их разбирать, но это глупо, и не правильно. Можешь попробывать приконнектиться к мепловской либе, и будет счастье А вообще лучше писать сразу на мэпле, и не мучаться ![]() |
|||
|
||||
Partizan |
|
|||
![]() Let's do some .NET ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2828 Регистрация: 19.12.2005 Где: Санкт-Петербург Репутация: 4 Всего: 67 |
albertn
-------------------- СУВ, Partizan. |
|||
|
||||
Пингвина |
|
|||
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 15.11.2006 Репутация: нет Всего: нет |
могу пример привести:
на ввод: 3*(x**2)+(x**3-x)*(x-1) должно вывести: 6*x+(3*x-1)*(x-1)+(x**3-x)*1 ну или что-то вроде этого ![]() Добавлено @ 17:03 не правильно я вывод написала!))))) это я производную написала.... Добавлено @ 17:04 короче, в выводе должна быть первообразная |
|||
|
||||
albertn |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 368 Регистрация: 17.7.2006 Где: г. Ставрополь Репутация: нет Всего: 34 |
А какие то возможны функции (sin, cos, ln, tg, exp, ...), или только числа, x, арифметические операции, скобки и возведение в степень?
Добавлено @ 17:19 Если так, то все оказывается несложным. Вот необходимая структура алгоритма:
|
|||
|
||||
Пингвина |
|
|||
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 15.11.2006 Репутация: нет Всего: нет |
там должны участвовать и синусы, и косинусы, и логарифмы...
и еще хотелось бы в программном виде увидеть ввод, вывод на экран и хотябы пару примеров с син и со степенью! ![]() |
|||
|
||||
JackYF |
|
|||
![]() полуавантюрист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 18 Всего: 162 |
Ага, а мне интересно, как программно вы будете брать интегралы типа x*log(x), x*x*sin(x) и т.д.
Не думаю, что это можно быстро запрограммить. Те интегралы, что я назвал, берутся по частям( иногда даже не один раз ). Не представляю себе, как нормально это программно реализовать - можно теоретически, но уж очень геморно... Пингвина, не знаю... Наверное, математический парсинг и математическое интегрирование сделать будет трудно. Добавлено @ 19:43 А если потребуется замена переменной, то там вообще ... ! |
|||
|
||||
Пингвина |
|
|||
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 15.11.2006 Репутация: нет Всего: нет |
спасибо, прямо обнадежили! можете, хотябы, для простых полиномов и синусов, косинусов написать??
![]() |
|||
|
||||
Silver |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 1.9.2005 Репутация: нет Всего: 1 |
Первые программы символьного интегрирования были написаны еще в начале 60 - ых.
Для интеграла там строилось последовательное дерево решений...на каждом узле дерева применялись различные методов интегрирования ... Данная задача скорее всего решаеться с использованием продукционной системы правда когда неизвестен конечный результат. (продукционные экспертные системы) это один из методов ИИ. Используються те же методики что и вмашинном доказательстве теорем. Основная трудность избежать зацикливания. |
|||
|
||||
![]() ![]() ![]() |
Правила форума "С++:Общие вопросы" | |
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |