📄 牛顿切线法.cpp
字号:
#include "math.h"
#include "stdio.h"
#include "iostream.h"
#define MaxK 1000
#define EPS 0.5e-3
double f(double x){return x*x*x-x-1;}
double f1(double x){return 3*x*x-1;}
void main()
{
double x=1.5;
int newton(double(*)(double),double(*)(double),double &x0,double);
if(newton(f,f1,x,EPS)==1)
printf("the root is x=%f \n",x);
else printf("the method is fail!");
}
int newton(double (*f)(double),double(*f1)(double),double &x0,double eps)
{
int i=0,k=0;
double x1=x0,T=0.0000;
cout<<"****牛顿切线法****"<<endl;
cout<<"k"<<" "<<"xk"<<endl;
cout<<"------------------------"<<endl;
cout<<i<<" "<<x0<<endl;
do
{
x0=x1;
x1=x0-f(x0)/f1(x0);
cout<<++i<<" "<<x1<<endl;
T=x1-x0;
T=fabs(T);
}while(T>=eps);
cout<<"------------------------"<<endl;
if(i>0){k=1;}
return k;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -