![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| Ak47black |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2205 Регистрация: 2.12.2005 Репутация: 1 Всего: 0 |
Привет всем.
Создал свою функцию которая позваляет вычеслять пример с любым уровнем скобок ,сунусами и т.п. например1+(sin(89+sin(90))). Работает моя функция нормально. Только некак немогу научить мою функцию находить X например (x/2 + x +10), уже весь интернет перерыл но никак немогу найти то что надо. Пожалуйста подскажите что мне нужно сделать или искать в интернете. Вот моя функция.
|
|||
|
||||
| SoWa |
|
|||
![]() Харекришна ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2422 Регистрация: 18.10.2004 Репутация: 2 Всего: 74 |
Решить уравнение?
-------------------- Всем добра |
|||
|
||||
| Ak47black |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2205 Регистрация: 2.12.2005 Репутация: 1 Всего: 0 |
Что-бы например я вводил троку '2+x/2' пропускал через свою процедуру и получал X=-1 |
|||
|
||||
| SoWa |
|
|||
![]() Харекришна ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2422 Регистрация: 18.10.2004 Репутация: 2 Всего: 74 |
Методом деления пополам, для примера. Но он не точный.
Добавлено @ 22:08
У тебя как с математикой? Во первых, почему должно быть -1? А если это равно 0, то х=-4 -------------------- Всем добра |
|||
|
||||
| Ak47black |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2205 Регистрация: 2.12.2005 Репутация: 1 Всего: 0 |
Логически на бумаге то легко решить ,только как это всё осошиствить в функции. Я несшетал когда писал. Это сообщение отредактировал(а) Ak47black - 10.3.2006, 22:18 |
|||
|
||||
| SoWa |
|
|||
![]() Харекришна ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2422 Регистрация: 18.10.2004 Репутация: 2 Всего: 74 |
Так я не понял, у тебя функция приравнивается к нулю?
-------------------- Всем добра |
|||
|
||||
| Ak47black |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2205 Регистрация: 2.12.2005 Репутация: 1 Всего: 0 |
Да |
|||
|
||||
| SoWa |
|
|||
![]() Харекришна ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2422 Регистрация: 18.10.2004 Репутация: 2 Всего: 74 |
Метод деления пополам осуществляется проще некуда. Берешь первое значение Х=(a+b)/2
Если f(X)=0 все хорошо. Если нет. If f(x)*f(a)<0 then b:=x else a:=x; И так далее. Добавлено @ 22:23 Что сложного? Так тебе надо цикл While и переменные X,a,b,E(погрешность), несколько промежуточных переменных. Кстати, код ты зря выложил. Выложи лучше в Арсенал Форумистов. Здесь страница долго грузится. PS Функцию я перепроверю, ибо математика у тебя действительно хромает. Не в обиду. Это сообщение отредактировал(а) SoWa - 10.3.2006, 22:25 -------------------- Всем добра |
|||
|
||||
| Ak47black |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2205 Регистрация: 2.12.2005 Репутация: 1 Всего: 0 |
А если например 2+2*x/4 + 5*x/2 +6/x*9 = 0 примерно чтото такого. Я хочю добиться универсально функции. Это сообщение отредактировал(а) Ak47black - 10.3.2006, 22:26 |
|||
|
||||
| SoWa |
|
|||
![]() Харекришна ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2422 Регистрация: 18.10.2004 Репутация: 2 Всего: 74 |
А какая разница? Определяй функцию на некотором интервале и решай. Хотя есть еще методы, но о них мне долго рассказывать: я их знаю поверхностно.
-------------------- Всем добра |
|||
|
||||
| sergejzr |
|
|||
![]() Un salsero Профиль Группа: Админ Сообщений: 13285 Регистрация: 10.2.2004 Где: Германия г .Ганновер Репутация: 1 Всего: 360 |
Это нетривиально. Но в принципе для линейных уравнений - переноси все с иксом в одну сторону, выноси за скобки, дели
|
|||
|
||||
| SoWa |
|
|||
![]() Харекришна ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2422 Регистрация: 18.10.2004 Репутация: 2 Всего: 74 |
Это ему уже в Алгоритмы.
-------------------- Всем добра |
|||
|
||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |