C语言程序设计 迭代法

问题描述:

C语言程序设计 迭代法
我在做程序设计题时 常碰到 用迭代法 到底什么叫迭代法?
比如 用迭代法求方程 x=cos x的根,要求误差小于 10E-6(10的负六次方).
以此题为例 如何用迭代法求解 谢
1个回答 分类:综合 2014-10-31

问题解答:

我来补答
main()
{double x1,x2;
x1=0.0;
x2=cos(x1);
while(fabs(x2-x1)>le-6)//当误差大于10的负六次方循环.
{x1=x2;
x2=cos(x1);
}
printf("x=%f\n",x2);
}
牛顿迭代法,是用于求方程或方程组近似根的一种常用的算法设计方法.设方程为f(x)=0,用某种数学方法导出等价的形式 x(n+1) = g(x(n)) = x(n)–f(x(n))/f‘(x(n)).然后按以下步骤执行:
(1) 选一个方程的近似根,赋给变量x1;
(2) 将x0的值保存于变量x1,然后计算g(x1),并将结果存于变量x0;
(3) 当x0与x1的差的绝对值还小于指定的精度要求时,重复步骤(2)的计算.
若方程有根,并且用上述方法计算出来的近似根序列收敛,则按上述方法求得的x0就
认为是方程的根.
 
 
展开全文阅读
剩余:2000