Консультация № 160979
20.02.2009, 12:49
0.00 руб.
0 1 1
решите пожалуйста задачу
1. Решить при помощи численных методов уравнение (найти действительные корни) указанным методом, составить блок-схему.
х⁴-4х+1=0 метод Ньютона; бисекции;

Обсуждение

давно
Профессор
401888
1232
21.02.2009, 16:15
общий
это ответ
Здравствуйте, Кондрашов Вадим Александрович!
Код программы, вычисляющей корень обоими методами в приложении. Теория методов и коды программ с детальными пояснениями в огромном количестве в интернете.

Приложение:
uses crt;
function F(x:real):real;
begin
F:=x*x*x*x-4*x+1; {заданная функция}
end;
function F1(x:real):real;
begin
F1:=4*x*x*x-4;{ее первая производная}
end;
function Bisec(a,b,e:real):real;{метод бисекции, или дихотомии}
var x,c:real;
begin
repeat
c:=(a+b)/2;
if F(a)*F(c)<0 then b:=c
else a:=c;
until b-a<e;
Bisec:=(a+b)/2;
end;
function Newton(x1,e:real):real;{метод Ньютона, или касательных}
var x2:real;
begin
repeat
x2:=x1;
x1:=x1-F(x1)/F1(x1);
until abs(x2-x1)>e;
Newton:=x1;
end;
var x0,x1,x2,eps:real;
begin
clrscr;
repeat
write('Vvedite nachalnoe priblizenie x1=');{слева от корня}
readln(x1);
write('Vvedite nachalnoe priblizenie x0=');{близко к корню}
readln(x0);
write('Vvedite nachalnoe priblizenie x2=');{справа от корня}
readln(x2);
until (x0>x1)and(x2>x0);
write('Vvedite tochnost eps=');
readln(eps);
writeln('Xnewton=',Newton(x0,eps):0:5);
writeln('Xbisec=',Bisec(x1,x2,eps):0:5);
readln
end.
Форма ответа