从百度百科上搜索了以下牛顿迭代法
代码段
#include<stdio.h>
#include<math.h>
int main()
{
double x, x1=1.5, f, f1;
for(x=0;fabs(x1 - x) >= 1e-5; )
{
x = x1;
f = 2 * x * x * x - 4 * x * x + 3 * x - 6;//求出对应函数值
f1 = 6 * x * x - 8 * x + 3;//求出切线斜率
x1= x - f / f1;//求切线与x轴的横坐标
printf("x1=%f\n", x1);
}
return 0;
结果展示
做题小插曲:
起初对牛顿迭代法尚未了解透彻、数学思想的附近的根深蒂固,加之自身思想不严谨认为1.5就是其近似根,有了以下结果:
写程序就像讲故事给计算机听,单单学会了字符的发音是远远不够的,如何构思把一件事情准确地讲给他听,如何巧妙地引人入胜?
路漫漫其修远兮,吾将上下而求索。