C语言编程
设x是用户输入的数。牛顿方法需要先给出x平方根的猜测值y(我们使用1)。后续的猜测值通过计算y和x/y的平均值得到。x y x/y y和x/y的平均数
3 1 3 2
3 2 1.5 1.75
3 1.75 1.71429 1.73214
3 1.73214 1.73196 1.73205
3 1.73205 1.73205 1.73205
当y的新旧值之差的绝对值小于0.0001和y的乘积时程序终止。(用fabs函数求double类型数值的绝对值)
#include<stdio.h> #include<math.h> int main(void) { double x,y=1,t; scanf("%lf",&x); while(1) { t=(y+x/y)/2; if(fabs(t-y)<0.0001*t) break; else y=t; } printf("sqrt(%g)=%f",x,t); return 0; }