• Добро пожаловать на компьютерный форум Tehnari.ru. Здесь разбираемся с проблемами ПК и ноутбуков: Windows, драйверы, «железо», сборка и апгрейд, софт и безопасность. Форум работает много лет, сейчас он переехал на новый движок, но старые темы и аккаунты мы постарались сохранить максимально аккуратно.

    Форум не связан с магазинами и сервисами – мы ничего не продаём и не даём «рекламу под видом совета». Отвечают обычные участники и модераторы, которые следят за порядком и качеством подсказок.

    Если вы у нас впервые, загляните на страницу о форуме и правила – там коротко описано, как задать вопрос так, чтобы быстро получить ответ. Чтобы создавать темы и писать сообщения, сначала зарегистрируйтесь, а затем войдите под своим логином.

    Не знаете, с чего начать? Создайте тему с описанием проблемы – подскажем и при необходимости перенесём её в подходящий раздел.
    Задать вопрос Новые сообщения Как правильно спросить
    Если пришли по старой ссылке со старого Tehnari.ru – вы на нужном месте, просто продолжайте обсуждение.

Метод Ньютона

марианна

Новые
Регистрация
1 Дек 2013
Сообщения
15
Реакции
1
Баллы
0
Метод Ньютона

ребят, ну помогите еще с одним заданием пожалуйста
 

Вложения

  • Безымянный.webp
    Безымянный.webp
    47.8 KB · Просмотры: 95
ребят, ну помогите еще с одним заданием пожалуйста
Пожалуйста.
Код:
Var
 x,y,b:Array[0..10] of Real;
 n,i,j,k:Byte;
 P,S,Q,z:Real;
Begin
 x[0]:=0.3240;
 for i:=1 to 10 do x[i]:=x[i-1]+0.1950;

 y[ 0]:=-0.3450;
 y[ 1]:=-0.0850;
 y[ 2]:= 0.0200;
 y[ 3]:= 0.0170;
 y[ 4]:=-0.0490;
 y[ 5]:=-0.1360;
 y[ 6]:=-0.1990;
 y[ 7]:=-0.1930;
 y[ 8]:=-0.0740;
 y[ 9]:= 0.2030;
 y[10]:= 0.6830;

 b[0]:=y[0];
 for i:=1 to 10 do
  begin
   S:=b[0];
   for j:=1 to i-1 do
    begin
     P:=1;
     for k:=0 to j-1 do P:=P*(x[i]-x[k]);
     S:=S+b[j]*P;
    end;
   P:=1;
   for k:=0 to i-1 do P:=P*(x[i]-x[k]);
   b[i]:=(y[i]-S)/P;
  end;

  z:=1.6960;
  Q:=b[0];
  for j:=1 to 10 do
   begin
    P:=1;
    for k:=0 to j-1 do P:=P*(z-x[k]);
    Q:=Q+b[j]*P;
   end;
  writeln('x= ',z:7:4,'    y= ',Q:7:4);

  z:=1.8860;
  Q:=b[0];
  for j:=1 to 10 do
   begin
    P:=1;
    for k:=0 to j-1 do P:=P*(z-x[k]);
    Q:=Q+b[j]*P;
   end;
  writeln('x= ',z:7:4,'    y= ',Q:7:4);

  z:=1.3400;
  Q:=b[0];
  for j:=1 to 10 do
   begin
    P:=1;
    for k:=0 to j-1 do P:=P*(z-x[k]);
    Q:=Q+b[j]*P;
   end;
  writeln('x= ',z:7:4,'    y= ',Q:7:4);
 Readln
End.

Несколько слов в пояснение.
Здесь, в отличие от темы про метод Лагранжа, я поленился писать заново и воспользовался своей старой программой отсюда:
http://www.tehnari.ru/f41/t85778/#post873309
Там же есть ссылки на описания самих алгоритмов, на базе которых писалась программа.
 
Пожалуйста.
Код:
Var
 x,y,b:Array[0..10] of Real;
 n,i,j,k:Byte;
 P,S,Q,z:Real;
Begin
 x[0]:=0.3240;
 for i:=1 to 10 do x[i]:=x[i-1]+0.1950;

 y[ 0]:=-0.3450;
 y[ 1]:=-0.0850;
 y[ 2]:= 0.0200;
 y[ 3]:= 0.0170;
 y[ 4]:=-0.0490;
 y[ 5]:=-0.1360;
 y[ 6]:=-0.1990;
 y[ 7]:=-0.1930;
 y[ 8]:=-0.0740;
 y[ 9]:= 0.2030;
 y[10]:= 0.6830;

 b[0]:=y[0];
 for i:=1 to 10 do
  begin
   S:=b[0];
   for j:=1 to i-1 do
    begin
     P:=1;
     for k:=0 to j-1 do P:=P*(x[i]-x[k]);
     S:=S+b[j]*P;
    end;
   P:=1;
   for k:=0 to i-1 do P:=P*(x[i]-x[k]);
   b[i]:=(y[i]-S)/P;
  end;

  z:=1.6960;
  Q:=b[0];
  for j:=1 to 10 do
   begin
    P:=1;
    for k:=0 to j-1 do P:=P*(z-x[k]);
    Q:=Q+b[j]*P;
   end;
  writeln('x= ',z:7:4,'    y= ',Q:7:4);

  z:=1.8860;
  Q:=b[0];
  for j:=1 to 10 do
   begin
    P:=1;
    for k:=0 to j-1 do P:=P*(z-x[k]);
    Q:=Q+b[j]*P;
   end;
  writeln('x= ',z:7:4,'    y= ',Q:7:4);

  z:=1.3400;
  Q:=b[0];
  for j:=1 to 10 do
   begin
    P:=1;
    for k:=0 to j-1 do P:=P*(z-x[k]);
    Q:=Q+b[j]*P;
   end;
  writeln('x= ',z:7:4,'    y= ',Q:7:4);
 Readln
End.

Несколько слов в пояснение.
Здесь, в отличие от темы про метод Лагранжа, я поленился писать заново и воспользовался своей старой программой отсюда:
http://www.tehnari.ru/f41/t85778/#post873309
Там же есть ссылки на описания самих алгоритмов, на базе которых писалась программа.

спасибо большое))))
 
Назад
Сверху