2018-2019学年人教A版必修三 算法案例(一) 学案
2018-2019学年人教A版必修三    算法案例(一)  学案第1页

§1.3 算法案例(一)

学习目标 1.了解辗转相除法与更相减损术中的数学原理,并能根据这些原理进行算法分析.2.了解秦九韶算法及利用它提高计算效率的本质.3.对简单的案例能设计程序框图并写出算法程序.

知识点一 求两个数的最大公约数的算法

思考 注意到8251=6105×1+2146,那么8251与6105这两个数的公约数和6105与2146的公约数有什么关系?

答案 显然8251与6105的公约数也必是2146的约数,同样6105与2146的公约数也必是8251的约数,所以8251与6105的最大公约数也是6105与2146的最大公约数.

梳理 求两个数的最大公约数有2种算法:

(1)辗转相除法

①辗转相除法,又叫欧几里得算法,是一种求两个正整数的最大公约数的古老而有效的算法.

②辗转相除法的算法步骤

第一步,给定两个正整数m,n.

第二步,计算m除以n所得的余数r.

第三步,m=n,n=r.

第四步,若r=0,则m,n的最大公约数等于m;

否则,返回第二步.

(2)更相减损术的运算步骤

第一步,任意给定两个正整数,判断它们是否都是偶数.若是,用2约简;若不是,执行第二步.

第二步,以较大的数减去较小的数,接着把所得的差与较小的数比较,并以大数减小数,继续这个操作,直到所得的数相等为止,则这个数(等数)或这个数与约简的数的乘积就是所求的最大公约数.

知识点二 求n次多项式f(x)=anxn+an-1xn-1+...+a1x+a0的值的算法

求n次多项式的值的算法,有一种比较好的算法叫秦九韶算法.

秦九韶算法的一般步骤:

把一个n次多项式f(x)=anxn+an-1xn-1+...+a1x+a0改写成如下形式:

(...((anx+an-1)x+an-2)x+...+a1)x+a0,求多项式的值时,首先计算最内层括号内一次多