在C语言中,什么是迭代法

如题所述

迭代法也称辗转法,是一种不断用变量的旧值递推新值的过程,跟迭代法相对应的是直接法(或者称为一次解法),即一次性解决问题。迭代算法是用计算机解决问题的一种基本方法,它利用计算机运算速度快、适合做重复性操作的特点,让计算机对一组指令(或一定步骤)进行重复执行,在每次执行这组指令(或这些步骤)时,都从变量的原值推出它的一个新值,迭代法又分为精确迭代和近似迭代。比较典型的迭代法如“二分法”和"牛顿迭代法”属于近似迭代法
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-06-24
这个其实很简单,假设有台电视,我让你猜价钱:
你说:4000,我说:高了(那么你把价钱降低一半报一次)
你说:2000,我说:低了(那么你把价钱升到4000和2000正中间)
你说:3000,我说:还低(那么你把价钱升到3000和4000正中间)
你说:3500,我说:高了(那么你把价钱降到3000和3500正中间)
你说:3250,我说:还高(那么你把价钱降到3000和3250正中间)
你说:3125,我说:低了(那么你把价钱升到3125和3250正中间)
你说:3200,我说:答对了!
这就是典型的迭代。当计算没有表达式的时候,你输入一个初始化的数据(比如4000),然后通过一个判断程序检验是否正确,如果不正确,就按照上两次之间的结果进行判断,以逐渐逼近的方式求得最终的数值,这就叫迭代

这个迭代有几个条件:第一:你有一个计算方式,从前面两步的一个值(比如前面的例子从最低的高值和最高的低值之间去中间值,就是一个计算方式)
第二,有一个判断程序,比如我心里知道的那个数,对你的报价进行比较
第三,有一个收敛条件(上面的例子是完全猜对,其实你也可以允许误差在100元内就算猜的正确)

相信聪明的你一定看的明白,要不然你去找范伟和赵本山要答案吧,哈哈哈!
相似回答