Читайте также:
|
|
Блок-схема правой части
Блок-схема производной правой части
Блок-схема для решения уравнения методом Ньютона
Блок-схема для главной функции
Код программы в среде Visual C++
#include <iostream>
#include <iomanip>
#include <cmath>
using namespace std;
double f1(double x)
{ double y;
y=sin(x)+x-0.5;
return y;
}
double f2(double x)
{ double y;
y=cos(x)+1;
return y;
}
double niu(double eps, double x, int& t)
{ double y;
t=1;
y=x-f1(x)/f2(x);
while(fabs(y-x)>=eps)
{t++;
x=y;
y=x-f1(x)/f2(x);
}
cout<<"t="<<t<<endl;
return y;
}
void main()
{ double eps, x, y;
int t;
cout<<"eps=";
cin>>eps;
cout<<eps<<endl;
cout<<"x=";
cin>>x;
cout<<x<<endl;
y=niu(eps,x,t);
cout<<"y="<<y<<endl;
}
Результат работы программы
Код программы в среде MATLAB
1. Файл f_niu.m
function z=f_niu(x)
z=sin(x)+x-0.5;
2. Файл f_niu1.m
function z=f_niu1(x)
z=cos(x)+1;
3. Файл f_niu2.m
function z=f_niu2(x)
z=-sin(x);
4. Файл niuton.m
function niuton(f,f1,f2,a,b,eps,x)
y=x-feval(f,x)/feval(f1,x)
t=1;
while abs(y-x)>=eps
x=y;
y=x-feval(f,x)/feval(f1,x);
t=t+1;
end;
x=y
t
Результат работы программы
>> niuton('f_niu','f_niu1','f_niu2',0.2,0.3,0.0000000001,0.25)
y =
0.2513
x =
0.2513
t =
Дата добавления: 2015-07-07; просмотров: 381 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
править] Обобщение на комплексную плоскость | | | Метод Ньютона |