![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Новичок
Джуниор
Регистрация: 25.03.2015
Сообщений: 3
|
![]()
Надо решить нелинейное уравнение 0,5^x-(x+2)^2=3
Пробовала методом Ньютона (касательных) но не выходит, спасибо заранее module mod implicit none contains function prsv(x) result(prF) integer, intent(in) :: x !input integer :: prF !output prF=(0.5**x)*log(0.5)-2x-4 return end function prsv function func(x) result(F) integer, intent(in) :: x !input integer :: F ! output F=(0.5**x)-(x+2)**2-3 return end function func end module mod program nelin use mod integer :: x ! integer :: func, prsv integer :: x1, x2, eps, n eps=0.0001 x1=0.5 n=0 if ((abs(x2-x1)<eps).or.(abs(func(x1))<eps)) then x2=x1-func(x1)/prsv(x1) n=n+1 else print*,x2,n end if |
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 02.03.2008
Сообщений: 2,504
|
![]()
Метод касательных не всегда сходится.
Попробуйте метод бисекций ( половинного деления) , он более всеядный. Или нужно именно секущих ? |
![]() |
![]() |
![]() |
#3 |
Новичок
Джуниор
Регистрация: 25.03.2015
Сообщений: 3
|
![]()
Допускается использование метод касательных, метод бисекции, метод хорд, метод простых итераций (если что-то не забыла).
Какой тогда может будет проще в реализации? |
![]() |
![]() |
![]() |
#4 |
Новичок
Джуниор
Регистрация: 25.03.2015
Сообщений: 3
|
![]()
да, допускается.
тогда попробую |
![]() |
![]() |
![]() |
#5 |
Старожил
Регистрация: 02.03.2008
Сообщений: 2,504
|
![]()
Да, лучше бисекций.
Посмотрите про https://Метод Ньютона - для него условия применения аж целый академик и нобелевский лауреат Канторович вычисил. А для бисекций каких-то особых требований к функции нет. |
![]() |
![]() |
![]() |
#6 |
Форумчанин
Регистрация: 15.01.2010
Сообщений: 948
|
![]()
Простите, а почему x и функции - типа integer ?!
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Решение нелинейного уравнения | stuxjkee | Помощь студентам | 4 | 18.04.2014 17:37 |
Решение нелинейного уравнения | Medioon | Помощь студентам | 1 | 12.06.2011 13:25 |
Решение нелинейного уравнения на С++ | Влад09 | Общие вопросы C/C++ | 0 | 05.12.2010 22:21 |
Проблема с нахождением корня нелинейного уравнения (Fortran 77) | reafantu | Помощь студентам | 7 | 03.03.2010 19:42 |