学案5:1.3 算法案例
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.3算法案例
知识一辗转相除法与更相减损术
[提出问题]
问题1:如何求18与54的最大公约数?
问题2:要求6 750与3 492的最大公约数,上述法还好用吗?
问题3:还有没有其他方法,可用来解决问题2中的问题?
[导入新知]
1.辗转相除法
(1)辗转相除法,又叫欧几里得算法,是一种求两个正整数的最大公约数的古老而有效的算法.
(2)辗转相除法的算法步骤:
第一步,给定两个正整数m,n.
第二步,计算m除以n所得的余数r.
第三步,m=n,n=r.
第四步,若r=0,则m,n的最大公约数等于m;否则返回第二步.
2.更相减损术
(1)更相减损术是我国古代数学专著《九章算术》中介绍的一种求两个正整数的最大公约数的算法.
(2)其基本过程是:
第一步,任意给定两个正整数,判断它们是否都是偶数.若是,用2约简;若不是,执行第二步.
第二步,以较大的数减去较小的数,接着把所得的差与较小的数比较,并以大数减小数,继续这个操作,直到所得的数相等为止,则这个数(等数)或这个数与约简的数的乘积就是所求的最大公约数.
[化解疑难]
辗转相除法与更相减损术的比较
两种方法辗转相除法更相减损术
计算法则除法减法
终止条件余数为0减数与差相等
最大公约数的选取最后一步中的除数最后一步中的减数计算次数步骤较少,运算复杂步骤较多,运算简单相同点同为求两个正整数最大公约数的方法,都是递归过程
知识点二秦九韶算法
[提出问题]
已知多项式f(x)=x5+3x4-3x3+4x2-x-1.
问题1:提示:f(1)=1+3-3+4-1-1=3.
问题2:若求f(39),再代入运算出现什么情况?
问题3:当x的值较大时,有没有更好的方法求函数值呢?
[导入新知]
秦九韶算法的算法原理
把一个n次多项式f(x)=a n x n+a n-1x n-1+…+a1x+a0改写成如下形式:
f(x)=a n x n+a n-1x n-1+…+a1x+a0
=(a n x n-1+a n-1x n-2+…+a1)x+a0
=((a n x n-2+a n-1x n-3+…+a2)x+a1)x+a0
=…
=(…((a n x+a n-1)x+a n-2)x+…+a1)x+a0.
求多项式的值时,首先计算最内层括号内一次多项式的值,即v1=a n x+a n-1,
然后由内向外逐层计算一次多项式的值,即
v2=v1x+a n-2,
v3=v2x+a n-3,
…
v n=v n-1x+a0,
这样,求n次多项式f(x)的值就转化为求n个一次多项式的值.
[化解疑难]
秦九韶算法的步骤
知识点三进位制
[提出问题]
问题1:今天是星期二,那么20天后是星期几?
问题2:每周七天,逢七便又是一循环,这与我们所学过的十进制,逢十进一是否有相似之处?
[导入新知]
1.进位制
(1)概念:进位制是为了计数和运算方便而约定的记数系统,“满几进一”就是几进制.
(2)基数:几进制的基数就是几.
2.不同进位制之间的互化
(1)k进制化为十进制的方法:
a n a n-1…a1a0(k)=a n×k n+a n-1×k n-1+…+a1×k+a0(a n,a n-1,…,a1,a0∈N,0<a n<k,
0≤a n-1,…,a1,a0<k).
(2)十进制化为k进制的方法——除k取余数.
[化解疑难]
常见的进位制
(1)二进制:①只使用0和1两个数字;②满二进一,如1+1=10.
(2)八进制:①使用0,1,2,3,4,5,6,7八个不同的数字;②满八进一,如7+1=10.
(3)十六进制:①使用0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F这十六个不同的数码,其中A,B,C,D,E,F分别代表十进制中的10,11,12,13,14,15;②满十六进一,如F+1=2+E=10.
题型一求最大公约数
[例1]分别用辗转相除法和更相减损术求779与209的最大公约数.
[类题通法]
1.用辗转相除法求最大公约数的步骤
2.用更相减损术求最大公约数的步骤
第一步,给定两个正整数m ,n (m >n 且m ,n 不全是偶数). 第二步,计算m -n 所得的差k .
第三步,比较n 与k 的大小,其中大者用m 表示,小者用n 表示. 第四步,若m =n ,则m ,n 的最大公约数等于m ;否则,返回第二步. [活学活用]
用辗转相除法和更相减损术求1515与600的最大公约数,需要运算的次数分别为( ) A .4,15 B .5,14 C .5,13 D .4,12
题型二
秦九韶算法及其应用 [例2] (1)已知f (x )=x 5+2x 3+3x 2+x +1,应用秦九韶算法计算当x =3时,v 3的值为( )
A .27
B .11
C .109
D .36
(2)用秦九韶算法求多项式f (x )=6x 6+5x 5+4x 4+3x 3+2x 2+x ,当x =2时的值.
[类题通法]
秦九韶算法原理及注意事项
(1)秦九韶算法的原理是⎩⎪⎨⎪⎧
v 0=a n ,v k =v k -1x +a n -k
,(k =1,2,…,n ).