1.3.1算法案例(第一课时)ppt
合集下载
1.3.1 进位制 公开课一等奖课件

例3 将五进制数30241(5)转化为七进制数. 30241(5)=3×54+2×52+4×5+1= 1946.
7 7
7 7 1946 278 39 5 0 余数 0
5
4 5
30241(5)=5450(7)
例4 已知10b1(2)=a02(3),求数字a,b的值. 10b1(2)=1×23+b×2+1=2b+9. a02(3)=a×32+2=9a+2. 所以2b+9=9a+2,即9a-2b=7. 故a=1,b=1.
思考2:十进制使用0~9十个数字,那么二 进制、五进制、七进制分别使用哪些数字? 思考3:在十进制中10表示十,在二进制中 10表示2.一般地,若k是一个大于1的整数, 则以k为基数的k进制数可以表示为一串数 字连写在一起的形式:anan-1…a1a0(k). 其中各个数位上的数字an,an-1,…,a1, a0的取值范围如何?
1234(5)=1×53+2×52+3×51+4×50=194.
知识探究(三):除k取余法
思考1:二进制数101101(2)化为十进制 数是什么数?十进制数89化为二进制 数是什么数? 101101(2)=25+23+22+1=45.
89=2×(2×(2×(2×(2×2+1)+1)+0)+0)+1 =1×26+0×25+1×24+1×23+0×22+0×21 +1×20=1011001(2).
思考4:十进制数4528表示的数可以写成 4×103+5×102+2×101+8×100,依此类 比,二进制数110011(2),八进制数7342(8) 分别可以写成什么式子?
辗转相除法算法课课件

教法选择: 本节课主要以小组合作、上机操作模式 下的问题教学和引导探究为主进行教学。
教材分析
目标分析
过程分析
教法分析
评价分析
教法、学法分析
学法指导:
在教师的引导下,充分发挥学生的主体作用; 让学生大胆猜想—自主探究—动手操作确认 。
教材分析
目标分析
过程分析
教法分析
评价分析
教学程序及设想
一:创设情境,铺垫导入 二:合作学习,探索新知 三:鼓励拓展,飞跃点睛 四:课堂练习,反馈回授 五:归纳总结,强化认识 六:分层作业,发展深化
教材分析 目标分析 过程分析 教法分析 评价分析
算法案例(二)--------秦九韶算法
程序四:课堂练习, 反馈回授
练习:
求最大公约数(1)228 ,1995 (2) 276,636 设计意图 (3)1140 ,1995
(1)巩固新知识
(2)若数据是偶数,或5的倍数,则可先除以2或5, 让学生灵活运用辗转相除法。
教材分析
目标分析
过程分析
教法分析
评价分析
教学目标
(一)知识与技能 (二)过程与方法 (三)情感与价值 让学生体会从具体到抽象,再从抽象到具体的辨证 唯物主义思想;发展学生解决问题的思维习惯;通过阶 梯形问题、动手实践活动,让学生体验成功的喜悦。
教材分析
目标分析
过程分析
教法分析
评价分析
教法、学法分析
问题三:求8251与6105 的最大公约数
答:8251 mod 6105=2146 ,6105 mod 2146=1813 2146 mod 1813=333 , 1813 mod 333 =148 333 mod 148 =37 , 148 mod 37 =0
教材分析
目标分析
过程分析
教法分析
评价分析
教法、学法分析
学法指导:
在教师的引导下,充分发挥学生的主体作用; 让学生大胆猜想—自主探究—动手操作确认 。
教材分析
目标分析
过程分析
教法分析
评价分析
教学程序及设想
一:创设情境,铺垫导入 二:合作学习,探索新知 三:鼓励拓展,飞跃点睛 四:课堂练习,反馈回授 五:归纳总结,强化认识 六:分层作业,发展深化
教材分析 目标分析 过程分析 教法分析 评价分析
算法案例(二)--------秦九韶算法
程序四:课堂练习, 反馈回授
练习:
求最大公约数(1)228 ,1995 (2) 276,636 设计意图 (3)1140 ,1995
(1)巩固新知识
(2)若数据是偶数,或5的倍数,则可先除以2或5, 让学生灵活运用辗转相除法。
教材分析
目标分析
过程分析
教法分析
评价分析
教学目标
(一)知识与技能 (二)过程与方法 (三)情感与价值 让学生体会从具体到抽象,再从抽象到具体的辨证 唯物主义思想;发展学生解决问题的思维习惯;通过阶 梯形问题、动手实践活动,让学生体验成功的喜悦。
教材分析
目标分析
过程分析
教法分析
评价分析
教法、学法分析
问题三:求8251与6105 的最大公约数
答:8251 mod 6105=2146 ,6105 mod 2146=1813 2146 mod 1813=333 , 1813 mod 333 =148 333 mod 148 =37 , 148 mod 37 =0
1.3.1 辗转相除法与更相减损术、秦九韶算法(共32张PPT)

1.3
算法案例
第一课时 辗转相除法 与更相减损术、秦九韶算法
知识能力目标引航 1.理解辗转相除法与更相减损术的含义,了解其执行过程,并会求最 大公约数. 2.掌握秦九韶算法的计算过程,了解它提高计算效率的实质,并会求 多项式的值. 3.进一步体会算法的基本思想.
1.辗转相除法与更相减损术 (1)辗转相除法. ①算法步骤: 第一步,给定两个正整数 m,n. 第二步,计算 m 除以 n 所得的余数 r. 第三步,m=n,n=r. 第四步,若 r=0,则 m,n 的最大公约数等于 m;否则返回第二步. ②程序框图如图所示.
求两个正整数的最大公约数的问题,可以用辗转相除法,也可以 用更相减损术.用辗转相除法,即根据 a=nb+r 这个式子,反复相除,直 到 r=0 为止;用更相减损术,即根据 r=|a-b|这个式子,反复相减,直到 r=0 为止.
题型二 求多项式的值 【例题 2】 用秦九韶算法求多项式 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,v1,v2,…,v7 分别是多少,再针对这些式子进行计算.
秦九韶算法的关键在于把 n 次多项式转化为一次多项式,注意 体会递推的实现过程,实施运算时要由内向外,一步一步执行.
题型三
易错辨析
【例题 3】已知 f(x)=3x4+2x2+4x+2,利用秦九韶算法求 f(-2)的值. 错解:f(x)=((3x2+2)x+4)x+2, v1=3×(-2)2+2=14; v2=14×(-2)+4=-24; v3=-24×(-2)+2=50. 故 f(-2)=50. 错因分析:所求 f(-2)的值是正确的,但是错解中没有抓住秦九韶 算法原理的关键,正确改写多项式,并使每一次计算只含有 x 的一次 项. 正解:f(x)=3x4+0·x3+2x2+4x+2=(((3x+0)x+2)x+4)x+2, v1=3×(-2)+0=-6; v2=-6×(-2)+2=14; v3=14×(-2)+4=-24; v4=-24×(-2)+2=50. 故 f(-2)=50.
算法案例
第一课时 辗转相除法 与更相减损术、秦九韶算法
知识能力目标引航 1.理解辗转相除法与更相减损术的含义,了解其执行过程,并会求最 大公约数. 2.掌握秦九韶算法的计算过程,了解它提高计算效率的实质,并会求 多项式的值. 3.进一步体会算法的基本思想.
1.辗转相除法与更相减损术 (1)辗转相除法. ①算法步骤: 第一步,给定两个正整数 m,n. 第二步,计算 m 除以 n 所得的余数 r. 第三步,m=n,n=r. 第四步,若 r=0,则 m,n 的最大公约数等于 m;否则返回第二步. ②程序框图如图所示.
求两个正整数的最大公约数的问题,可以用辗转相除法,也可以 用更相减损术.用辗转相除法,即根据 a=nb+r 这个式子,反复相除,直 到 r=0 为止;用更相减损术,即根据 r=|a-b|这个式子,反复相减,直到 r=0 为止.
题型二 求多项式的值 【例题 2】 用秦九韶算法求多项式 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,v1,v2,…,v7 分别是多少,再针对这些式子进行计算.
秦九韶算法的关键在于把 n 次多项式转化为一次多项式,注意 体会递推的实现过程,实施运算时要由内向外,一步一步执行.
题型三
易错辨析
【例题 3】已知 f(x)=3x4+2x2+4x+2,利用秦九韶算法求 f(-2)的值. 错解:f(x)=((3x2+2)x+4)x+2, v1=3×(-2)2+2=14; v2=14×(-2)+4=-24; v3=-24×(-2)+2=50. 故 f(-2)=50. 错因分析:所求 f(-2)的值是正确的,但是错解中没有抓住秦九韶 算法原理的关键,正确改写多项式,并使每一次计算只含有 x 的一次 项. 正解:f(x)=3x4+0·x3+2x2+4x+2=(((3x+0)x+2)x+4)x+2, v1=3×(-2)+0=-6; v2=-6×(-2)+2=14; v3=14×(-2)+4=-24; v4=-24×(-2)+2=50. 故 f(-2)=50.
高中数学【人教A版必修】3第一章1.3 算法案例 课件 (26张ppt )

第四步:重复二、三步, 直到余数为0.
第四步,若r=0,则m,n的最大公约 数等于_m_;否则,返回第二步.
算法的思想
辗转相除法
问题4. 辗转相除法的算法有什么特点? 需要使用哪种基本逻辑结构?
• 辗转相除法是一个反复执行直到余数等于0停 止的步骤,可以使用循环结构来构造算法。
回顾:构造循环结构应确定哪几部分内容? ①初始化变量 ②确定循环体 ③设定循环控制条件
高中数学【人教A版必修】3第一章1.3 算法案例 课件 (26张ppt )【精品】
更相减损术
《九章算术》——更相减损术
“可半者半之,不可半者,副置分母、子之数,以少 减多,更相减损,求其等也,以等数约之。”
翻译: 第一步:任意给定两个正整数,判断它们是否都是 偶数。若是,用2约简;若不是,执行第二步。 第二步:以较大的数减较小的数,接着把所得的差 与较小的数比较,并以大数减小数。继续这个操作, 直到所得的减数和差相等为止,则这个等数就是所 求的最大公约数。
结论:8251和6105的最大公约数就是6105和2146的最大公 约数.
第二步: 6105 = 2146 ×2 + 1813
结论:6105和2146的最大公约数也是2146和1813的最大公 …… 约数.
最后一步: 148 = 37 ×4 + 0.
余数为0
最终结论:8251和6105的最大公约数也是148和37的最大 公约数,即37.
否
WHILE 条件 循环体
WEND
知问
回顾:
1.编程解决问题需经过哪些步骤? 算法分析、程序框图、程序
2.循环结构的程序框图和语句? 3.求两个正整数最大公约数的方法? 短除法:先用两个数的公约数连续去除,一直除到 所得的商是互质数为止,然后把所有的除数连乘起 来即为最大公约数。
1.3.1 辗转相除法与更相减损术、秦九韶算法(共32张PPT)

(2)算法步骤
第一步,输入两个正整数a,b(a>b);
第二步,若a不等于b ,则执行第三步;否则转到第五步; 第三步,把a-b的差赋予r; 第四步,如果b>r, 那么把b赋给a,把r赋给b;否则把r赋给a, 执行第二步; 第五步,输出最大公约数b.
(3)程序框图
开始 输入a,b
a=r
否
a≠b? 是 r=a-b
v2=v1x-4=5×5-4=21
v3=v2x+3=21×5+3=108 v4=v3x-6=108×5-6=534 v5=v4x+7=534×5+7=2 677 所以,当x=5时,多项式的值是2 677.
1.比较辗转相除法与更相减损术的区别 (1)都是求最大公约数的方法,计算上辗转相除法以除
法为主,更相减损术以减法为主,计算次数上辗转相除
49 7
63 9
所以,25和35的最大公 约数为5.
所以,49和63的最大公
约数为7.
辗转相除法 (欧几里得算法)
为什么?
思考:算出8 251和6 105的最大公约数. 第一步,用两数中较大的数除以较小的数,求得商和余 数8 251=6 105×1+2 146. 结论:8 251和6 105的公约数就是6 105和2 146的公 约数,求8 251和6 105的最大公约数,只要求出6 105 和2 146的最大公约数就可以了.
1.3 算法案例
第1课时 辗转相除法与更相减损 术、秦九韶算法
1.通过辗转相除法与更相减损术、秦九韶算法的学习,进
一步体会算法思想;
2.通过古代著名的算法,理解掌握辗转相除法与更相减损 术、秦九韶算法的含义;(重点)
3.了解其计算过程;(重点)
(最新整理)《1.3算法案例》ppt课件

2021/7/26
29
例2 已知一个五次多项式为
f( x ) 5 x 5 2 x 4 3 .5 x 3 2 .6 x 2 1 .7 x 0 .8
用秦九韶算法求这个多项式当x = 5的值。 解:将多项式变形:
f ( x ) (5 x ( 2 ) ( x 3 . ( 5 ) x 2 . 6 ) x 1 . 7 ) x 0 . 8
二进制的表示方法
二进制是用0、1两个数字来描述的.如 11001 区分的写法:11001(2)或者 (1 11001 ( 1)2 2 1 0 )2 4 0 1 2 3 1 0 2 2 0 2 1 1 2 0
的最大公约数 2021/7/26
7
1、辗转相除法(欧几里得算法)
(1)算理:所谓辗转相除法,就是对于给定 的两个数,用较大的数除以较小的数。若余 数不为零,则将余数和较小的数构成新的一 对数,继续上面的除法,直到大数被小数除 尽,则这时较小的数就是原来两个数的最大 公约数。
2021/7/26
8
辗转相除法是一个反复执行直到余数等
2021/7/26
12
2、更相减损术
(1)算理:所谓更相减损术,就是对于 给定的两个数,用较大的数减去较小的数, 然后将差和较小的数构成新的一对数,再 用较大的数减去较小的数,反复执行此步 骤直到差数和较小的数相等,此时相等的 两数便为原来两个数的最大公约数。
2021/7/26
13
例3 用更相减损术求98与63的最大公约数
2021/7/26所以,当x = 5时,多项式的值等于17255.2
30
程序框图:
开始
输入f(x)的系数: a0,a1,a2,a3,a4a5
输入x0
v v0 k a vk n1xank(k1,2, ,n)
高一数学 1.3.1 辗转相除法与更相减损术、秦九韶算法课件 新人教A版必修2

§1.3 算法案例
第一课时 辗转相除法与更相减损术、秦九韶算法
自学导引 1.理解辗转相除法与更相减损术的含义,了解执行过程. 2.掌握秦九韶算法的计算过程,了解它在数学计算中的应用. 3.进一步体会算法的基本思想.
课前热身
欧几里得算法
两个正整数的最大公约数
1.辗转相除法是用于求
_____________________的一种方 较大的数
解:解法1(辗转相除法):先求175与100的最大公约数: 175=100×1+75, 100=75×1+25, 75=25×3. ∴175与100的最大公约数是25. 以下再求25与75的最大公约数: 75=25×3 ∴25和75的最大公约数是25.
故25是75和25的最大公约数,也就是175、100、75的最大公约数.
Hale Waihona Puke (3)任何两个数,用辗转相除法求其最大公约数的程序框图. 由于辗转相除法总是用较大的数去除以较小的数,所以首先要对一 开始给定的两数的大小进行判断,并将大数赋给m,小数赋给n,然 后再执行下面的过程.程序框图如下图所示:
(4)辗转相除法求两个数的最大公约数的程序设计.
INPUT “a,b”;a,b IF a<b THEN t=a a=b b=t END IF r=a MOD b WHILE r<>0 a=b b=r r=a MOD b WEND PRINT b END
解:(1)98和63 辗转相除法 S1 98=63 ×1+35, S2 63=35 ×1+28, S3 35=28×1+7, S4 28=4 ×7, 最大公约数为7.
更相减损术 S1 98-63=35, S2 63-35=28, S3 35-28=7, S4 28-7=21, S5 21-7=14, S6 14-7=7, 故98和63的最大公约数为7.
第一课时 辗转相除法与更相减损术、秦九韶算法
自学导引 1.理解辗转相除法与更相减损术的含义,了解执行过程. 2.掌握秦九韶算法的计算过程,了解它在数学计算中的应用. 3.进一步体会算法的基本思想.
课前热身
欧几里得算法
两个正整数的最大公约数
1.辗转相除法是用于求
_____________________的一种方 较大的数
解:解法1(辗转相除法):先求175与100的最大公约数: 175=100×1+75, 100=75×1+25, 75=25×3. ∴175与100的最大公约数是25. 以下再求25与75的最大公约数: 75=25×3 ∴25和75的最大公约数是25.
故25是75和25的最大公约数,也就是175、100、75的最大公约数.
Hale Waihona Puke (3)任何两个数,用辗转相除法求其最大公约数的程序框图. 由于辗转相除法总是用较大的数去除以较小的数,所以首先要对一 开始给定的两数的大小进行判断,并将大数赋给m,小数赋给n,然 后再执行下面的过程.程序框图如下图所示:
(4)辗转相除法求两个数的最大公约数的程序设计.
INPUT “a,b”;a,b IF a<b THEN t=a a=b b=t END IF r=a MOD b WHILE r<>0 a=b b=r r=a MOD b WEND PRINT b END
解:(1)98和63 辗转相除法 S1 98=63 ×1+35, S2 63=35 ×1+28, S3 35=28×1+7, S4 28=4 ×7, 最大公约数为7.
更相减损术 S1 98-63=35, S2 63-35=28, S3 35-28=7, S4 28-7=21, S5 21-7=14, S6 14-7=7, 故98和63的最大公约数为7.
1.3(1)辗转相除法ppt课件

开始 输入m,n
n=r m=n
r>0? 否
输出m
求m除以n的余数r 是
INPUT m,n WHILE r>0
r=m MOD n m=n n=r WEND PRINT m END
结束
14
练习1:利用辗转除法求两数4081与20723的最大公约数. (53)
20723=4081×5+318; 4081=318×12+265; 318=265×1+53; 265=53×5+0.
先用两个数公有的质因数连续去除,一直除到所得的商是互质数为止,然后把所有 的除数连乘起来即为最大公约数.
3
思考2:对于8251与6105这两个数,由于其公有的质因数较大,利用上述方法求最大公约 数就比较困难.注意到8251=6105×1+2146,那么8251与6105这两个数的公约数和6105与 2146的公约数有什么关系?
4
思考3:又6105=2146×2+1813,同理,6105与2146的公约数和2146与1813的公约数相等. 重复上述操作,你能得到8251与6105这两个数的最大公约数吗?
8251=6105×1+2146, 6105=2146×2+1813, 2146=1813×1+333, 1813=333×5+148, 333=148×2+37, 148=37×4+0.
1
学习目标 1.理解辗转相除法与更相减损术求最大公约数的原理。 2.能写出两种求最大公约数方法的算法步骤与程序框图。 3.会求出两个数的最大公约数,进一步体会算法的基本思想以及算法在解决问题
的过程中所体现的特点。
2
知识探究(一):辗转相除法 思考1:18与30的最大公约数是多少?你是怎样得到的?
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第二步:以较大的数减较小的数,接着把所得的差 与较小的数比较,并以大数减小数。继续这个操作, 直到所得的减数和差相等为止,则这个等数就是所 求的最大公约数。
2、更相减损术 (1)算理:所谓更相减损术,就是对于给 定的两个数,用较大的数减去较小的数,然 后将差和较小的数构成新的一对数,再用较 大的数减去较小的数,反复执行此步骤直到 差数和较小的数相等,此时相等的两数便为 原来两个数的最大公约数。
先约简,再求21与18的最大公约数,然后乘 以两次约简的质因数4
例3、求324、243、135这三个数的最大 公约数。
思路分析:求三个数的最大公约数可以先求出两个 数的最大公约数,第三个数与前两个数的最大公约 数的最大公约数即为所求。
小结
比较辗转相除法与更相减损术的区别
(1)都是求最大公约数的方法,计算上辗转相除
开始
输入a,b a≠b? 是 r=a-b a=r 否 r<b? 是 a=b b=r 否
输出b
结束
例3 用更相减损术求98与63的最大公约数
解:由于63不是偶数,把98和63以大数减小数, 并辗转相减 98-63=35 63-35=28 35-28=7 28-7=21 21-7=21 14-7=7 所以,98和63的最大公约数等于7 练习: 用更相减损术求两个正数84与72的最大公约数.
(2)算法步骤
第一步:输入两个正整数m,n(m>n). 第二步:计算m除以n所得的余数r. 第三步:m=n,n=r. 第四步:若r=0,则m,n的最大公约数等于m; 否则转到第二步.
第五步:输出最大公约数m.
(3)程序框图
(4)程序
INPUT “m,n=“;m,n
DO r=m MOD n m=n n=r
(1) 5 25 5 35 7(2) 7Fra bibliotek49 7
63 9
所以,25和35的最大公 约数为5
所以,49和63的最大公 约数为7
2、除了用这种方法外还有没有其它方法? 算出8256和6105的最大公约数.
辗转相除法(欧几里得算法) 观察用辗转相除法求8251和6105的最大公约数的过程
第一步 用两数中较大的数除以较小的数,求得商和余数 8251=6105×1+2146 结论: 8251和6105的公约数就是6105和2146的公约数, 求8251和6105的最大公约数,只要求出6105和2146的公 约数就可以了。 第二步 对6105和2146重复第一步的做法 6105=2146×2+1813 同理6105和2146的最大公约数也是2146和1813的最大公 约数。
开始 输入m,n
r=m MOD n
m=n n=r 否
LOOP UNTIL r=0
PRINT m END
r=0?
是 输出m 结束
《九章算术》——更相减损术 算理:可半者半之,不可半者,副置分母、子 之数,以少减多,更相减损,求其等也,以等 数约之。
第一步:任意给定两个正整数;判断他们是否都是 偶数。若是,则用2约简;若不是则执行第二步。
(2)算法步骤
第一步:输入两个正整数a,b(a>b);
第二步:若a不等于b ,则执行第三步;否则转 到第五步; 第三步:把a-b的差赋予r;
第四步:如果b>r, 那么把b赋给a,把r赋给b;否 则把r赋给a,执行第二步; 第五步:输出最大公约数b.
(3)程序框图 (4)程序
INPUT “a,b=“;a,b WHILE a<>b r=a-b IF b>r THEN a=b b=r ELSE a=r END IF WEND PRINT b END
例2 用辗转相除法求225和135的最大公 完整的过程 约数 225=135×1+90 8251=6105×1+2146 6105=2146×2+1813 2146=1813×1+333 1813=333×5+148 333=148×2+37 135=90×1+45 90=45×2 显然45是90和45的最大公约数,也 就是225和135的最大公约数 思考1:从上面的两个例子可以看 出计算的规律是什么? S1:用大数除以小数 S2:除数变成被除数,余数变成 除数 S3:重复S1,直到余数为0
148=37×4+0
显然37是148和37的最大 公约数,也就是8251和 6105的最大公约数
辗转相除法是一个反复执行直到余数等于0停止的步骤, 这实际上是一个循环结构。 m=n×q+r
用程序框图表示出右边的过程 8251=6105×1+2146 6105=2146×2+1813 2146=1813×1+333
r=m MOD n
m=n
n=r r=0? 否
1813=333×5+148
333=148×2+37 148=37×4+0
是
1、辗转相除法(欧几里得算法) (1)算理:所谓辗转相除法,就是对于给定 的两个数,用较大的数除以较小的数。若余 数不为零,则将余数和较小的数构成新的一 对数,继续上面的除法,直到大数被小数除 尽,则这时较小的数就是原来两个数的最大 公约数。
算 法 案 例
(第一课时)
1. 回顾算法的三种表述:
自然语言 程序框图(三种逻辑结构)
程序语言(五种基本语句)
2. 思考: 小学学过的求两个数最大公约数的方法?
先用两个公有的质因数连续去除, 一直除到所得的商是互质数为止,然 后把所有的除数连乘起来.
1、求两个正整数的最大公约数
(1)求25和35的最大公约数 (2)求49和63的最大公约数
法以除法为主,更相减损术以减法为主,计算次数
上辗转相除法计算次数相对较少,特别当两个数字
大小区别较大时计算次数的区别较明显。 (2)从结果体现形式来看,辗转相除法体现结果 是以相除余数为0则得到,而更相减损术则以减数与 差相等而得到
2、更相减损术 (1)算理:所谓更相减损术,就是对于给 定的两个数,用较大的数减去较小的数,然 后将差和较小的数构成新的一对数,再用较 大的数减去较小的数,反复执行此步骤直到 差数和较小的数相等,此时相等的两数便为 原来两个数的最大公约数。
先约简,再求21与18的最大公约数,然后乘 以两次约简的质因数4
例3、求324、243、135这三个数的最大 公约数。
思路分析:求三个数的最大公约数可以先求出两个 数的最大公约数,第三个数与前两个数的最大公约 数的最大公约数即为所求。
小结
比较辗转相除法与更相减损术的区别
(1)都是求最大公约数的方法,计算上辗转相除
开始
输入a,b a≠b? 是 r=a-b a=r 否 r<b? 是 a=b b=r 否
输出b
结束
例3 用更相减损术求98与63的最大公约数
解:由于63不是偶数,把98和63以大数减小数, 并辗转相减 98-63=35 63-35=28 35-28=7 28-7=21 21-7=21 14-7=7 所以,98和63的最大公约数等于7 练习: 用更相减损术求两个正数84与72的最大公约数.
(2)算法步骤
第一步:输入两个正整数m,n(m>n). 第二步:计算m除以n所得的余数r. 第三步:m=n,n=r. 第四步:若r=0,则m,n的最大公约数等于m; 否则转到第二步.
第五步:输出最大公约数m.
(3)程序框图
(4)程序
INPUT “m,n=“;m,n
DO r=m MOD n m=n n=r
(1) 5 25 5 35 7(2) 7Fra bibliotek49 7
63 9
所以,25和35的最大公 约数为5
所以,49和63的最大公 约数为7
2、除了用这种方法外还有没有其它方法? 算出8256和6105的最大公约数.
辗转相除法(欧几里得算法) 观察用辗转相除法求8251和6105的最大公约数的过程
第一步 用两数中较大的数除以较小的数,求得商和余数 8251=6105×1+2146 结论: 8251和6105的公约数就是6105和2146的公约数, 求8251和6105的最大公约数,只要求出6105和2146的公 约数就可以了。 第二步 对6105和2146重复第一步的做法 6105=2146×2+1813 同理6105和2146的最大公约数也是2146和1813的最大公 约数。
开始 输入m,n
r=m MOD n
m=n n=r 否
LOOP UNTIL r=0
PRINT m END
r=0?
是 输出m 结束
《九章算术》——更相减损术 算理:可半者半之,不可半者,副置分母、子 之数,以少减多,更相减损,求其等也,以等 数约之。
第一步:任意给定两个正整数;判断他们是否都是 偶数。若是,则用2约简;若不是则执行第二步。
(2)算法步骤
第一步:输入两个正整数a,b(a>b);
第二步:若a不等于b ,则执行第三步;否则转 到第五步; 第三步:把a-b的差赋予r;
第四步:如果b>r, 那么把b赋给a,把r赋给b;否 则把r赋给a,执行第二步; 第五步:输出最大公约数b.
(3)程序框图 (4)程序
INPUT “a,b=“;a,b WHILE a<>b r=a-b IF b>r THEN a=b b=r ELSE a=r END IF WEND PRINT b END
例2 用辗转相除法求225和135的最大公 完整的过程 约数 225=135×1+90 8251=6105×1+2146 6105=2146×2+1813 2146=1813×1+333 1813=333×5+148 333=148×2+37 135=90×1+45 90=45×2 显然45是90和45的最大公约数,也 就是225和135的最大公约数 思考1:从上面的两个例子可以看 出计算的规律是什么? S1:用大数除以小数 S2:除数变成被除数,余数变成 除数 S3:重复S1,直到余数为0
148=37×4+0
显然37是148和37的最大 公约数,也就是8251和 6105的最大公约数
辗转相除法是一个反复执行直到余数等于0停止的步骤, 这实际上是一个循环结构。 m=n×q+r
用程序框图表示出右边的过程 8251=6105×1+2146 6105=2146×2+1813 2146=1813×1+333
r=m MOD n
m=n
n=r r=0? 否
1813=333×5+148
333=148×2+37 148=37×4+0
是
1、辗转相除法(欧几里得算法) (1)算理:所谓辗转相除法,就是对于给定 的两个数,用较大的数除以较小的数。若余 数不为零,则将余数和较小的数构成新的一 对数,继续上面的除法,直到大数被小数除 尽,则这时较小的数就是原来两个数的最大 公约数。
算 法 案 例
(第一课时)
1. 回顾算法的三种表述:
自然语言 程序框图(三种逻辑结构)
程序语言(五种基本语句)
2. 思考: 小学学过的求两个数最大公约数的方法?
先用两个公有的质因数连续去除, 一直除到所得的商是互质数为止,然 后把所有的除数连乘起来.
1、求两个正整数的最大公约数
(1)求25和35的最大公约数 (2)求49和63的最大公约数
法以除法为主,更相减损术以减法为主,计算次数
上辗转相除法计算次数相对较少,特别当两个数字
大小区别较大时计算次数的区别较明显。 (2)从结果体现形式来看,辗转相除法体现结果 是以相除余数为0则得到,而更相减损术则以减数与 差相等而得到