Система нелинейных уравнений - PascalABC.NET

Узнай цену своей работы

Формулировка задачи:

помогите пожалуйста сделать цикл не параметрический, а с предусловием или постусловием...
чтобы было "повторять до тех пор, пока не станет <=eps", а eps:=0.00001

Решение задачи: «Система нелинейных уравнений»

textual
Листинг программы
program newton;
uses crt;
const eps=0.00001;
var x,y,f1,f2,a11,a12,a21,a22,w:real;
i:integer;
function tan(x,y:real):real;
begin 
f1:=((tan(x*y+0.1))-(x*x)); 
end;
begin
x:=-0.2; y:=0.8;
while (x<=eps) or (y<=eps) do//for i:=1 to 15 do
begin
f1:=((tan(x*y+0.1))-(x*x)); 
f2:=((0.6*x*x)+(2*y*y)-1);
a11:=y*(tan((x*y+0.1)*(x*y+0.1))+1-2*x); a12:=x*(tan((x*y+0.1)*(x*y+0.1))+1);
a21:=1.2*x; a22:=4*y;
w:=((4*y*(y*(tan((x*y+0.1)*(x*y+0.1))+1-2*x)))-(1.2*x*(x*(tan((x*y+0.1)*(x*y+0.1))+1))));
x:=x-(a11*f1+a12*f2)/w;
y:=y-(a21*f1+a22*f2)/w;
i:=i+1;
writeln('N итерации',i,' x= ',x,'y= ',y);
end;
 
repeat until keypressed
end.

Объяснение кода листинга программы

Список элементов кода с их номерами и описанием:

  1. program newton; - Объявление программы
  2. uses crt; - Подключение модуля для работы с консолью
  3. const eps=0.00001; - Определение константы eps
  4. var x,y,f1,f2,a11,a12,a21,a22,w:real; - Объявление переменных
  5. i:integer; - Объявление переменной i типа integer
  6. function tan(x,y:real):real; - Объявление функции tan
  7. begin
  8. f1:=((tan(xy+0.1))-(xx));
  9. end; - Определение функции tan
  10. begin
  11. x:=-0.2; y:=0.8;
  12. while (x<=eps) or (y<=eps) do//for i:=1 to 15 do
  13. begin
  14. f1:=((tan(xy+0.1))-(xx));
  15. f2:=((0.6xx)+(2yy)-1);
  16. a11:=y(tan((xy+0.1)(xy+0.1))+1-2*x);
  17. a12:=x(tan((xy+0.1)(xy+0.1))+1);
  18. a21:=1.2*x;
  19. a22:=4*y;
  20. w:=((4y(y(tan((xy+0.1)(xy+0.1))+1-2x)))-(1.2x(x(tan((xy+0.1)(x*y+0.1))+1))));
  21. x:=x-(a11f1+a12f2)/w;
  22. y:=y-(a21f1+a22f2)/w;
  23. i:=i+1;
  24. writeln('N итерации',i,' x= ',x,'y= ',y);
  25. end;
  26. repeat until keypressed
  27. end. Код решает систему нелинейных уравнений методом Ньютона. Переменные x и y представляют собой решения системы, а функции tan, a11, a12, a21, a22 и w используются для вычисления значений функций и их производных. Пользователь может вводить данные для начального приближения x и y, а затем программа будет выводить результаты каждой итерации, пока x и y не будут достаточно малы (то есть, пока значение eps не будет достигнуто).

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 3.929 из 5
Похожие ответы