Модераторы: Poseidon
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> [pascal]Решить уравнение методом Ньютона 
:(
    Опции темы
DoZENT
Дата 20.3.2007, 01:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 326
Регистрация: 2.6.2006

Репутация: нет
Всего: 1



Привет всем! Необходимо решить уравнение f(X)=3x-18lnx  на интервале от 1 до 2  методом Ньютона,используя цикл repeat. Вычислить кол-во итераций. Кто-нибудь знает что это за метод? Нашел такой пример:

Код

program newdr;    { -> 243 }
var    x,x2    : real;
    alldone    : boolean;
    error    : boolean;

external procedure cls;

procedure func(x: real;
        var fx,dfx: real);
begin
  fx:=x*x-2.0;
  dfx:=2.0*x
end;    { func }

procedure newton(var x: real);
const    tol    = 1.0E-6;

var    fx,dfx,dx,x1:    real;

begin    { newton }
  repeat
    x1:=x;
    func(x,fx,dfx);
    dx:=fx/dfx;
    x:=x1-dx;
    writeln('x=',x1,'  fx=',fx,'  dfx=',dfx);
  until abs(dx)<=abs(tol*x)
end;    { newton }

begin        { main program }
  cls;
  writeln;
  x:=2.0;    { first guess }
  newton(x);
  writeln;
  writeln(chr(7),'The solution is ',x);
  writeln
end.


Но здесь не используется интервал. И вообще тот ли этот метод?



--------------------
Какая боль, какая боль, Internet Explorer 5.0...
PM MAIL   Вверх
Alexeis
Дата 20.3.2007, 10:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 23
Всего: 459



DoZENT, а зачем тут интервал? Для ньютона нужна только одна точка, если я не ошибаюсь, то критерий выбора точки f''(x)*f(x)>0 (f'' - вторая производная)


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
DoZENT
Дата 20.3.2007, 11:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 326
Регистрация: 2.6.2006

Репутация: нет
Всего: 1



Alexeis, не знаю, задание формулировалось именно так, как в моем первом посте. Не просто же так дан интервал именно [1,2]. А если интервал не нужен, то приведенная выше программа и есть решение уравнения... Народ, напишите пожалуйста точно, нужен ли интервал в решении уравнения методом Ньютона, а то не себе делаю, перед человеком будет очень неудобно, если не так напишу...


--------------------
Какая боль, какая боль, Internet Explorer 5.0...
PM MAIL   Вверх
Alexeis
Дата 20.3.2007, 11:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 23
Всего: 459



DoZENT, вот и нужно выбрать одну из точек, которая удовлетворяет условию f''(x)*f(x)>0, и с нее и начинать метод.


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
DoZENT
Дата 20.3.2007, 20:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 326
Регистрация: 2.6.2006

Репутация: нет
Всего: 1



Цитата

DoZENT, вот и нужно выбрать одну из точек, которая удовлетворяет условию f''(x)*f(x)>0, и с нее и начинать метод.

Как я понял за выбор этой точки отвечает строчка
Код

 x:=2.0;    { first guess }

?  Т.е. в моем случае (промежуток [1,2]) нужно сделать x := 1.0?


--------------------
Какая боль, какая боль, Internet Explorer 5.0...
PM MAIL   Вверх
Alexeis
Дата 20.3.2007, 22:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 23
Всего: 459



f''(2)*f(2)>0
f''(1)*f(1)<0


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Центр помощи"

ВНИМАНИЕ! Прежде чем создавать темы, или писать сообщения в данный раздел, ознакомьтесь, пожалуйста, с Правилами форума и конкретно этого раздела.
Несоблюдение правил может повлечь за собой самые строгие меры от закрытия/удаления темы до бана пользователя!


  • Название темы должно отражать её суть! (Не следует добавлять туда слова "помогите", "срочно" и т.п.)
  • При создании темы, первым делом в квадратных скобках укажите область, из которой исходит вопрос (язык, дисциплина, диплом). Пример: [C++].
  • В названии темы не нужно указывать происхождение задачи (например "школьная задача", "задача из учебника" и т.п.), не нужно указывать ее сложность ("простая задача", "легкий вопрос" и т.п.). Все это можно писать в тексте самой задачи.
  • Если Вы ошиблись при вводе названия темы, отправьте письмо любому из модераторов раздела (через личные сообщения или report).
  • Для подсветки кода пользуйтесь тегами [code][/code] (выделяйте код и нажимаете на кнопку "Код"). Не забывайте выбирать при этом соответствующий язык.
  • Помните: один топик - один вопрос!
  • В данном разделе запрещено поднимать темы, т.е. при отсутствии ответов на Ваш вопрос добавлять новые ответы к теме, тем самым поднимая тему на верх списка.
  • Если вы хотите, чтобы вашу проблему решили при помощи определенного алгоритма, то не забудьте описать его!
  • Если вопрос решён, то воспользуйтесь ссылкой "Пометить как решённый", которая находится под кнопками создания темы или специальным флажком при ответе.

Более подробно с правилами данного раздела Вы можете ознакомится в этой теме.

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Poseidon, Rodman

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Центр помощи | Следующая тема »


 




[ Время генерации скрипта: 0.0693 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.