📄 root.c
字号:
#include<stdio.h>
#include<math.h>
double fun(double x)
{
double y;
y=log10(x-1)-1;
return y;
}
double root(double h,double e,double rt0)
{
double y1,y2,xa,xb,xc,ya,yb,yc,xd=0.0;
y1= fun(rt0);
do
{
rt0=rt0+h;
y2=fun(rt0);
if((y1*y2)<=0.0) break;
y1=y2;
}while(1);
ya=y1;yb=y2;xa=rt0-h;xb=rt0;
do
{
xc=xb-(xb-xa)*yb/(yb-ya);
if(fabs(xd-xc)<=e) break;
yc=fun(xc);
if(yc*ya>0.0)
{
ya=yc;
xa=xc;
}
if(yc*yb>0.0)
{
yb=yc;
xb=xc;
}
xd=xc;
}while(1);
return xc;
}
void main()
{
double x;
x=root(0.01,0.000001,2.0);
printf("%f",x);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -