新人教A版必修32020学年高中数学第1章算法初步1_3_1辗转相除法与更相减损术、秦九韶算法学案

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第1课时辗转相除法与更相减损术、秦九韶算法
1.理解辗转相除法与更相减损术的含义,了解其执行过程.
2.理解秦九韶算法的计算过程,并了解它提高计算效率的实质.
1.辗转相除法与更相减损术
(1)辗转相除法
①辗转相除法,又叫欧几里得算法,是一种求两个正整数的最大公约数的古老而有效的算法.
②辗转相除法的算法步骤
第一步,给定两个正整数m,n.
第二步,计算m除以n所得的余数r.
第三步,m=n,n=r.
第四步,若r=0,则m,n的最大公约数等于m;否则,返回第二步.
(2)更相减损术的算法步骤
第一步,任意给定两个正整数,判断它们是否都是偶数.若是,用2约简;若不是,执行第二步.
第二步,以较大的数减去较小的数,接着把所得的差与较小的数比较,并以大数减小数.继续这个操作,直到所得的数相等为止,则这个数(等数)或这个数与约简的数的乘积就是所求的最大公约数.
(3)辗转相除法和更相减损术的区别与联系
(1)秦九韶算法简介
①秦九韶算法要解决的问题是求多项式的值.
②秦九韶算法的特点
通过一次式的反复计算,逐步得到高次多项式的值,即将一个n次多项式的求值问题归结为重复计算n个一次多项式的值的问题.
③秦九韶算法的原理
将f(x)=a n x n+a n-1x n-1+…+a1x+a0改写为:
f(x)=(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
=…
先计算最内层括号内一次多项式的值,即v1=a n x+a n-1,再由内向外逐层计算一次多项式v k的值.
(2)秦九韶算法的操作方法
①算法步骤如下
第一步,输入多项式次数n、最高次项的系数a n和x的值.
第二步,将v的值初始化为a n,将i的值初始化为n-1.
第三步,输入i次项的系数a i.
第四步,v=vx+a i,i=i-1.
第五步,判断i是否大于或等于0.若是,则返回第三步;否则,输出多项式的值v.
②程序框图如图所示
③程序如下
INPUT “n=”;n
INPUT “an=”;a
INPUT “x=”;x
v=a
i=n-1
WHILE i>=0
INPUT “ai=”;a
v=v*x+a
i=i-1
WEND
PRINT v
END
1.实际应用更相减损术时要做的第一步工作是什么?
[提示] 先判断a,b是否为偶数,若是,都除以2再进行.
2.判断正误.(正确的打“√”,错误的打“×”)
(1)辗转相除法的基本步骤是用较大的数除以较小的数.( )
(2)求最大公约数的方法除辗转相除法之外,没有其他方法.( )
(3)编写辗转相除法的程序时,要用到循环语句.( )
[提示] (1)√(2)×(3)√
题型一辗转相除法和更相减损术的应用
【典例1】用辗转相除法求612与468的最大公约数,并用更相减损术检验所得结果.[思路导引] 将612作为大数,468作为小数,执行辗转相除法和更相减损术的步骤即可.
[解] 用辗转相除法:
612=468×1+144,468=144×3+36,144=36×4,
即612和468的最大公约数是36.
用更相减损术检验:
612和468为偶数,两次用2约简得153和117,153-117=36,117-36=81,81-36=45,45-36=9,36-9=27,27-9=18,18-9=9,
所以612和468的最大公约数为9×2×2=36.
求最大公约数的两种方法步骤
(1)利用辗转相除法求给定的两个数的最大公约数,即利用带余除法,用数对中较大的数除以较小的数,若余数不为零,则将余数和较小的数构成新的数对,再利用带余除法,直到大数被小数除尽,则这时的较小数就是原来两个数的最大公约数.
(2)利用更相减损术求两个正整数的最大公约数的一般步骤是:首先判断两个正整数是否都是偶数.若是,用2约简,也可以不除以2,直接求最大公约数,这样不影响最后结果.
[针对训练1] 用辗转相除法求80与36的最大公约数,并用更相减损术检验你的结果.[解] 80=36×2+8,
36=8×4+4,8=4×2+0,
即80与36的最大公约数是4.
验证:
80÷2=40,36÷2=18;
40÷2=20,18÷2=9;
20-9=11,11-9=2;
9-2=7,7-2=5;
5-2=3,3-2=1;
2-1=1,1×2×2=4;
所以80与36的最大公约数为4.
题型二求三个正整数的最大公约数
【典例2】求325,130,270三个数的最大公约数
[思路导引] 求三个数的最大公约数,可先求两个数的最大公约数,再求这个最大公约数与第三个数的最大公约数.
[解] 解法一(辗转相除法):因为325=130×2+65,130=65×2,所以325和130的最大公约数为65.
因为270=65×4+10,65=10×6+5,10=5×2,
所以65和270的最大公约数为5,
故325,130,270三个数的最大公约数为5.
解法二(更相减损术):325-130=195,195-130=65,130-65=65.
所以325和130的最大公约数是65.
270-65=205,205-65=140,140-65=75,75-65=10,65-10=55,55-10=45,45-10=35,35-10=25,25-10=15,15-10=5,10-5=5.
所以65和270的最大公约数为5,故325,130,270三个数的最大公约数为5.
理解辗转相除法的实质,从计算结果上看,辗转相除法是以相除余数为零而得到结果的.
[针对训练2] 求三个数175,100,75的最大公约数.
[解] 先求175与100的最大公约数:
175=100×1+75,100=75×1+25,75=25×3,
∴175与100的最大公约数是25.
再求25与75的最大公约数:
75-25=50,50-25=25,
∴75和25的最大公约数是25.
∴175,100,75的最大公约数是25.
题型三秦九韶算法
【典例3】已知一个5次多项式为f(x)=4x5+2x4+3.5x3-2.6x2+1.7x-0.8,用秦九韶算法求这个多项式当x=5时的值.
[思路导引] 可根据秦九韶算法的原理,将所给的多项式改写,然后由内到外逐次计算.[解] 将f(x)改写为f(x)=((((4x+2)x+3.5)x-2.6)x+1.7)x-0.8,
由内向外依次计算一次多项式,当x=5时的值:
v0=4;
v 1=4×5+2=22; v 2=22×5+3.5=113.5; v 3=113.5×5-2.6=564.9; v 4=564.9×5+1.7=2826.2; v 5=2826.2×5-0.8=14130.2.
所以当x =5时,多项式的值等于14130.2.
(1)用秦九韶算法求多项式f (x )当x =x 0的值的思路为: ①改写.
②计算⎩
⎪⎨
⎪⎧
v 0=a n ,v k =v k -1x 0+a n -k (k =1,2,…,n ).
③结论f (x 0)=v n .
(2)应用秦九韶算法计算多项式的值应注意的3个问题 ①要正确将多项式的形式进行改写. ②计算应由内向外依次计算.
③当多项式函数中间出现空项时,要以系数为零的齐次项补充.
[针对训练3] 用秦九韶算法计算多项式f (x )=12+35x -8x 2
+6x 4
+5x 5
+3x 6
在x =-4时的值时,v 3的值为( )
A .-144
B .-136
C .-57
D .34
[解析] 根据秦九韶算法多项式可化为f (x )=(((((3x +5)x +6)x +0)x -8)x +35)x +12.
由内向外计算v 0=3;
v 1=3×(-4)+5=-7; v 2=-7×(-4)+6=34; v 3=34×(-4)+0=-136.
[答案] B
课堂归纳小结
1.求两个正整数的最大公约数的问题,可以用辗转相除法,也可以用更相减损术.用辗
转相除法,即根据a=nb+r这个式子,反复相除,直到r=0为止;用更相减损术,即根据r=|a-b|这个式子,反复相减,直到r=0为止.
2.秦九韶算法的关键在于把n次多项式转化为一次多项式,注意体会递推的实现过程,实施运算时要由内向外,一步一步执行.
1.辗转相除法可解决的问题是( )
A.求两个正整数的最大公约数
B.多项式求值
C.求两个正整数的最小公倍数
D.排序问题
[解析] 辗转相除法可以求两个正整数的最大公约数.
[答案] A
2.用辗转相除法求72与120的最大公约数时,需要做除法次数为( )
A.4 B.3
C.5 D.6
[解析] 120=72×1+48,72=48×1+24,48=24×2.
[答案] B
3.用更相减损术求36与134的最大公约数,第一步应为________.
[解析] ∵36与134都是偶数,∴第一步应先除以2,得到18与67.
[答案] 先分别除以2,得到18与67
4.用秦九韶算法求f(x)=2x3+x-3当x=3时的值v2=________.
[解析] f(x)=((2x+0)x+1)x-3,v0=2,v1=2×3+0=6,v2=6×3+1=19.
[答案] 19
5.用秦九韶算法求多项式f(x)=8x7+5x6+3x4+2x+1,当x=2时的值.
[解] 根据秦九韶算法,把多项式改写成如下形式:
f(x)=8x7+5x6+0·x5+3·x4+0·x3+0·x2+2x+1=((((((8x+5)x+0)x+3)x+0)x+0)x+2)x+1.
而x=2,所以有v0=8,
v1=8×2+5=21,
v2=21×2+0=42,
v3=42×2+3=87,
v4=87×2+0=174,
v5=174×2+0=348,
v6=348×2+2=698,
v7=698×2+1=1397.
所以当x=2时,多项式的值为1397.
算法案例在实际生活中的应用
通过算法案例的学习,知道算法的核心是一般意义上的解决问题的策略的具体化.对于一个实际问题,我们在分析、思考后可将之转化为数学问题,从而获得解决它的基本思路.
【典例】现有长度为2.4 m和5.6 m两种规格的钢筋若干,要焊接一批棱上无接点的正方体模型,问怎样设计才能保证正方体的体积最大且不浪费材料?
[思路导引] 要焊接正方体,就是将两种规格的钢筋截成长度相等的钢筋条.为了保证不浪费材料,应使得每种规格的钢筋截取后没有剩余,因此截取的长度应为2.4与5.6的公约数;为使得正方体的体积最大,因此截取的长度应为2.4与5.6的最大公约数.
[解] 用更相减损术来求2.4与5.6的最大公约数:
5.6-2.4=3.2,
3.2-2.4=0.8,
2.4-0.8=1.6,
1.6-0.8=0.8,
因此2.4与5.6的最大公约数为0.8.
所以使得正方体的棱长为0.8 m时,正方体的体积最大且不浪费材料.
[针对训练] 甲,乙,丙三种溶液的质量分别为147 g,343 g,133 g,现要将它们分别全部装入小瓶中,每个小瓶中装入溶液的质量相同,问每瓶最多装多少?
[解] 由题意,每个小瓶中装入的溶液的质量应是三种溶液质量的最大公约数.
先求147与343的最大公约数:
343-147=196,196-147=49,147-49=98,98-49=49,
所以147与343的最大公约数是49.
再求49与133的最大公约数:
133-49=84,84-49=35,49-35=14,35-14=21,21-14=7,14-7=7,
所以147,343,133的最大公约数为7,即每瓶最多装7 g.
课后作业(八)
(时间45分钟)
学业水平合格练(时间25分钟)
1.秦九韶算法与直接计算相比较,下列说法错误的是( )
A.秦九韶算法与直接计算相比,大大节省了做乘法的次数,使计算量减少,并且逻辑
结构简单
B.秦九韶算法减少了做乘法的次数,在计算机上也就加快了计算的速度
C.秦九韶算法减少了做乘法的次数,在计算机上也就降低了计算的速度
D.秦九韶算法避免了对自变量x单独做幂的计算,而且与系数一起逐次增长幂次,从而提高计算的精度
[解析] 秦九韶算法减少了做乘法的次数,在计算机上也就加快了计算的速度,故选项C错误.
[答案] C
2.下列说法中正确的个数为( )
①辗转相除法也叫欧几里得算法;
②辗转相除法的基本步骤是用较大的数除以较小的数;
③求最大公约数的方法,除辗转相除法之外,没有其他方法;
④编写辗转相除法的程序时,要用到循环语句.
A.1 B.2
C.3 D.4
[解析] ①、②、④正确,③错误.
[答案] C
3.利用秦九韶算法求f(x)=1+2x+3x2+…+6x5当x=2时的值时,下列说法正确的是( )
A.先求1+2×2
B.先求6×2+5,第二步求2×(6×2+5)+4
C.f(2)=1+2×2+3×22+4×23+5×24+6×25直接运算求解
D.以上都不对
[解析] 利用秦九韶算法应先算a n x+a n-1,再算(a n x+a n-1)x+a n-2,故选B.
[答案] B
4.中国古代有计算多项式值的秦九韶算法,下图是实现该算法的程序框图.执行该程序框图,若输入的x=2,n=2,依次输入的a为2,2,5,则输出的s=( )
A.7 B.12
C.17 D.34
[解析] 该题考查程序框图的运行及考生的识图能力.
由程序框图知,
第一次循环:x=2,n=2,a=2,s=0×2+2=2,k=1;
第二次循环:a=2,s=2×2+2=6,k=2;
第三次循环:a=5,s=6×2+5=17,k=3.结束循环,输出s的值为17,故选C.
[答案] C
5.用更相减损术求117和182的最大公约数时,需做减法的次数是( )
A.8 B.7
C.6 D.5
[解析] ∵182-117=65,117-65=52,65-52=13,52-13=39,39-13=26,26-13=13,∴13是117和182的最大公约数,需做减法的次数是6.
[答案] C
6.用秦九韶算法求n次多项式f(x)=a n x n+a n-1x n-1+…+a1x+a0当x=x0时的值,求f(x0)需要乘方、乘法、加法的次数分别为( )
A.n(n+1)
2
,n,n B.n,2n,n
C.0,2n,n D.0,n,n
[解析] 因为f(x)=(…((a n x+a n-1)x+a n-2)x+…+a1)x+a0,所以乘方、乘法、加法的次数分别为0,n,n.
[答案] D
7.用秦九韶算法求多项式f(x)=12+35x-8x2+79x3+6x4+5x5+3x6当x=-4的值时,其中v1的值为________.
[解析] ∵f(x)=12+35x-8x2+79x3+6x4+5x5+3x6,∴v0=a6=3,v1=v0x+a5=3×(-4)+5=-7.
[答案] -7
8.378和90的最大公约数为________.
[解析] 378=90×4+18,90=18×5+0,
∴378与90的最大公约数是18.
[答案] 18
9.求1356和2400的最小公倍数.
[解] 2400=1356×1+1044,
1356=1044×1+312,
1044=312×3+108,
312=108×2+96,
108=96×1+12,
96=12×8.
所以1356与2400的最大公约数为12.
则1356与2400的最小公倍数为(1356×2400)÷12=271200.
10.用秦九韶算法求多项式f(x)=7x7+6x6+5x5+4x4+3x3+2x2+x当x=3时的值.[解] f(x)=((((((7x+6)x+5)x+4)x+3)x+2)x+1)·x,所以v0=7,
v1=7×3+6=27,
v2=27×3+5=86,
v3=86×3+4=262,
v4=262×3+3=789,
v5=789×3+2=2369,
v6=2369×3+1=7108,
v7=7108×3=21324.
故x=3时,多项式f(x)=7x7+6x6+5x5+4x4+3x3+2x2+x的值为21324.
应试能力等级练(时间20分钟)
11.下列哪组的最大公约数与1855,1120的最大公约数不同( )
A.1120,735 B.385,350
C.385,735 D.1855,325
[解析] ∵(1855,1120)→(735,1120)→(735,385)→(350,385)→(350,35),
∴1855与1120的最大公约数是35,
由以上计算过程可知选D.
[答案] D
12.用秦九韶算法计算多项式f(x)=3x6+4x5+5x4+6x3+7x2+8x+1,当x=0.4时的值时,需要做乘法和加法的次数分别是( )
A.6,6 B.5,6
C.5,5 D.6,5
[解析] 根据秦九韶算法,把多项式改写为f(x)=(((((3x+4)x+5)x+6)x+7)x+8)x+1,∴需要做6次加法运算,6次乘法运算,故选A.
[答案] A
13.已知a=333,b=24,则使得a=bq+r(q,r均为自然数,且0≤r≤b)成立的q 和r的值分别为________.
[解析] 用333除以24,商即为q,余数就是r.333÷24的商为13,余数是21.
∴q=13,r=21.
[答案] 13,21
14.用秦九韶算法求多项式f(x)=1-5x-8x2+10x3+6x4+12x5+3x6当x=-4时的值时,v0,v1,v2,v3,v4中最大值与最小值的差是________.
[解析] 多项式变形为
f(x)=3x6+12x5+6x4+10x3-8x2-5x+1
=(((((3x+12)x+6)x+10)x-8)x-5)x+1,
v0=3,
v1=3×(-4)+12=0,
v2=0×(-4)+6=6,
v3=6×(-4)+10=-14,
v4=-14×(-4)-8=48,
所以v4最大,v3最小,所以v4-v3=48+14=62.
[答案] 62
15.用辗转相除法和更相减损术两种方法求三个数72,120,168的最大公约数.
[解] (辗转相除法):
先求120,168的最大公约数.
因为168=120×1+48,
120=48×2+24,48=24×2,
所以120,168的最大公约数是24.
再求72,24的最大公约数.
因为72=24×3,所以72,24的最大公约数为24,即72,120,168的最大公约数为24.
(更相减损术):
先求120,168的最大公约数.
168-120=48,120-48=72,
72-48=24,48-24=24,
所以120,168的最大公约数为24.
再求72,24的最大公约数.
72-24=48,48-24=24,
所以72,24的最大公约数为24,
即72,120,168的最大公约数为24.。

相关文档
最新文档