Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.06.2009, 21:36   #1
NoHeart
Пользователь
 
Регистрация: 15.01.2009
Сообщений: 52
По умолчанию Метод Ньютона

Уважаемые программисты, может кто написать решение функции func =2*Ln(x)-0.5*x+1 методом Ньютона (Касательных) (От 10 до 15) погрешность = 0.0001. К сожалению я не знаю как он реализуется, или опишите алгоритм данного метода. Спасибо.
NoHeart вне форума Ответить с цитированием
Старый 03.06.2009, 21:52   #2
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

http://alglib.sources.ru/equations/feq0newton.php
http://ru.wikipedia.org/wiki/Метод_Ньютона
http://eco.sutd.ru/Study/Informat/Newton.html
http://masu-inform.ru:8888/index.php/Метод_Ньютона.
http://radio2all.ru/chismet/Lect09/lect09.htm
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Старый 03.06.2009, 21:58   #3
NoHeart
Пользователь
 
Регистрация: 15.01.2009
Сообщений: 52
По умолчанию

Премного благодарен!
NoHeart вне форума Ответить с цитированием
Старый 03.06.2009, 22:10   #4
NoHeart
Пользователь
 
Регистрация: 15.01.2009
Сообщений: 52
По умолчанию

function Func(x:real):real;
begin
Func:=2*Ln(x)-0.5*x+1;
end;

procedure iter(a:real;b:real);
begin
b:=Func(a);
itt:=0;
repeat
a:=b;
b:=Func(a);
inc(itt);
until abs(b-a)<e; {пока не будет достигнута нужная точность}

writeln('Root: ',b:1:5, ' (',itt,' itterations)');
end;

Это реализация метода простых итераций для данной функции, никто не подскажет, что делать с натуральным логарифмом? Он может быть только от положительного числа. А при данном методе, получаются отрицательные...
NoHeart вне форума Ответить с цитированием
Старый 03.06.2009, 22:17   #5
OCTAGRAM
Oldschool geek
Форумчанин
 
Аватар для OCTAGRAM
 
Регистрация: 09.03.2009
Сообщений: 611
По умолчанию

Непохоже на метод Ньютона.
If you want to get to the top, you have to start at the bottom

http://pascal.net.ru/
OCTAGRAM вне форума Ответить с цитированием
Старый 03.06.2009, 22:28   #6
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Угу, не похоже.
Цитата:
Это реализация метода простых итераций для данной функции
Если это метод простых итераций, то представить функцию по-другому.
А метод Ньютона вот:
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Старый 03.06.2009, 22:37   #7
NoHeart
Пользователь
 
Регистрация: 15.01.2009
Сообщений: 52
По умолчанию

А метод Ньютона вот:
_____

Где?=))
NoHeart вне форума Ответить с цитированием
Старый 03.06.2009, 22:39   #8
NoHeart
Пользователь
 
Регистрация: 15.01.2009
Сообщений: 52
По умолчанию

Цитата:
Сообщение от Sazary Посмотреть сообщение
Угу, не похоже.

Если это метод простых итераций, то представить функцию по-другому.
А метод Ньютона вот:
Вот и не знаю как функцию по другому представить=((
NoHeart вне форума Ответить с цитированием
Старый 03.06.2009, 22:46   #9
__STDC__
Участник клуба
 
Аватар для __STDC__
 
Регистрация: 16.03.2009
Сообщений: 1,013
По умолчанию

Ну метод Ньютона это частный случай метода простых итераций..
Описание метода касательных:
Метод касательных.doc

***
и там вряд ли получится отрицательное число, если корень на отрезке [10;15]..
Uguu~

Последний раз редактировалось __STDC__; 03.06.2009 в 22:51.
__STDC__ вне форума Ответить с цитированием
Старый 03.06.2009, 22:52   #10
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Ну для вашей функции
2*Ln(x)-0.5*x+1=0
как-то так, если не ошибся.
x = exp(0.5*x-1)/2
Цитата:
Сообщение от __STDC__
Ну метод Ньютона это частный случай метода простых итераций..
Ну да.. Но все же тут же еще и производную нужно считать.
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Pascal, метод Ньютона, вычисление корня ф-ии. Qousio Помощь студентам 2 02.05.2009 19:47
Метод Ньютона Durak Помощь студентам 1 30.04.2008 21:55
Метод Ньютона Cubar Помощь студентам 12 09.02.2008 21:28