牛顿迭代法求解(第一次写,我是小白)
解方程
https://ac.nowcoder.com/acm/contest/5600/G
用牛顿迭代法
令f(x)=x^a+blnx-c
可以求出xn+1 = xn - f( xn ) / f'( xn )
然后只要令初始x为一个大于0的数就行
#include<stdio.h>
#include<math.h>
int main(){
int a,b,c;
scanf("%d%d%d",&a,&b,&c);
double x=1;
while(fabs(pow(x,a)+b*log(x)-c)>0.0000001)
{
x=x-(pow(x,a)+b*log(x)-c)/(a*pow(x,a-1)+b/x);
}
printf("%.14lf",x);
}
