![]() |
Модераторы: Snowy, MetalFan, bems, Poseidon |
![]() ![]() ![]() |
|
MrAlex |
|
|||
Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 3.5.2010 Репутация: нет Всего: нет |
Уважаемые программисты, помогите разобраться что не так.
Надо решить систему нелинейных уравнений методом простой итерации и методом Ньютона. Метод итерации вроде получился, а метод Ньютона никак не получается, что делать? Пишет, что "Invalid floating point operation"
Заранее благодарен! Это сообщение отредактировал(а) MrAlex - 3.5.2010, 16:44 |
|||
|
||||
superVad |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 735 Регистрация: 6.4.2006 Где: Черкассы, Украина Репутация: 7 Всего: 15 |
Ерунда какая то.
f1[1]:=0.85+cos(y[i]); f2[1]:=-1.32+sin(x[i-1]); Как ты тут обращаешся к i а оно у тебя еще не инициализировано. Вот чему тут i равно? for i:=2 to 100 do begin f1[i]:=0.85+cos(y[i]); f2[i]:=-1.32+sin(x[i]); Ты обращаешься к элементам массива (y[2] например) которые еще ничем не заполнены... Да и отформатируй код - самому же легче будет. |
|||
|
||||
MrAlex |
|
|||
Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 3.5.2010 Репутация: нет Всего: нет |
Вот так вот правильнее будет?
|
|||
|
||||
superVad |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 735 Регистрация: 6.4.2006 Где: Черкассы, Украина Репутация: 7 Всего: 15 |
MrAlex, ну я же не знаю, чего ты хочешь
Но все равно не правильно. ![]() может так....
Да и вроде как значения f1, f2, dx1, dx2 ты дальше уже нигде не используешь. Т.е. это могут быть не массивы а просто переменные типа real. Добавлено через 6 минут и 26 секунд т.е.
|
||||
|
|||||
MrAlex |
|
|||
Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 3.5.2010 Репутация: нет Всего: нет |
Спасибо! Ошибку больше не выдает, но и результат не выводит, почему?
|
|||
|
||||
superVad |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 735 Регистрация: 6.4.2006 Где: Черкассы, Украина Репутация: 7 Всего: 15 |
Не получает ни одного результата удовлетворяющего условие:
if(abs(dx1)<0.1) and (abs(dx2)<0.1) then |
|||
|
||||
MrAlex |
|
|||
Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 3.5.2010 Репутация: нет Всего: нет |
Что делать? Как исправить?
|
|||
|
||||
profesiachuvak |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 283 Регистрация: 7.11.2009 Где: Беларусь, Минск Репутация: 1 Всего: 4 |
Искать алгоритм методов, и искать ошибку в его реализации. Тут нужно теорию проверять. -------------------- Закон Мерфи :если есть вероятность того, что какая-нибудь неприятность может случиться, то она обязательно произойдет. |
|||
|
||||
MrAlex |
|
|||
Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 3.5.2010 Репутация: нет Всего: нет |
Ребята, ну кто в этом разберается помогите, пожалуйста
|
|||
|
||||
superVad |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 735 Регистрация: 6.4.2006 Где: Черкассы, Украина Репутация: 7 Всего: 15 |
В чем - в этом? В решении системы нелинейных уравнений методом Ньютона?
|
|||
|
||||
![]() ![]() ![]() |
Правила форума "Delphi: Для новичков" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Delphi: Для новичков | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |