必修三(算法案例)

合集下载

高中数学人教A版必修三 1.3 算法案例 课件 (共37张PPT)

高中数学人教A版必修三 1.3 算法案例 课件 (共37张PPT)

开始
输入f (x)的系数: a0、a1、a2、a3、a4、a5
输入x0
n=0
v=a5
v= v· x0+a5-n
n=n+1
n < 5? 否 输出v 结束

秦九韶算法的特点:
通过一次式的反复计算,逐步得出高次 多项式的值,对于一个n次多项式,只需做n 次乘法和n次加法即可。
练习:
1、已知多项式f(x)=x5+5x4+10x3+10x2+5x+1
所以:89=1011001(2)
2、十进制转换为二进制(除2取余法:用2连续去除89或所得的
商,然后取余数)
注意: 1.最后一步商为0, 2.将上式各步所得 的余数从下到上排 列,得到: 89=1011001(2)
2 89 48 2 22 2 2 11 2 5 2 2 2 1 0
余数 1 0 0 1 1 0 1
练习 将下面的十进制数化为二进制数? (1)10 (2)20 (3)128 (4)256
2、十进制转换为其它进制
例4 把89 化为五进 制数 解:根据除k取余法 以5作为除数,相应的除法算式为: 5 5
数为0
思考2:辗转相 用程序框图表示出右边的过程 除法中的关键 r=m MOD n 步骤是哪种逻 辑结构? m=n 辗转相除法中 n=r 的关键步骤是哪 r=0? 种逻辑结构?辗 否 是 转相除法是一个 反复执行直到余 数等于0停止的 步骤,这实际上 是一个循环结构。
m=n×q+r
8251=6105×1+2146 6105=2146×2+1813 2146=1813×1+333 1813=333×5+148 333=148×2+37 148=37×4+0

高中数学算法案例-进位制(公开课)教案 新人教A版必修3

高中数学算法案例-进位制(公开课)教案 新人教A版必修3

必修3第一章1.3算法案例:案例3进位制[教学目标]:(1)了解各种进位制与十进制之间转换的规律,会利用各种进位制与十进制之间的联系进行各种进位制之间的转换。

(2)学习各种进位制转换成十进制的计算方法,研究十进制转换为各种进位制的除k 去余法,并理解其中的数学规律。

[教学重点]各进位制表示数的方法及各进位制之间的转换[教学难点]除k取余法的理解[情感态度价值观] 学生通过合作完成任务,领悟十进制,二进制的特点,了解计算机与二进制的联系,进一步认识到计算机与数学的联系,培养他们的合作精神和严谨的态度。

[教学方法] 讲解法、尝试法、归纳法、讨论法、[教学用具]多媒体电脑[学法] 学习各种进位制特点的同时探讨进位制表示数与十进制表示数的区别与联系,熟悉各种进位制表示数的方法,从而理解十进制转换为各种进位制的除k取余法。

[教学过程]一、创设情景,揭示课题辗转相除法和更相减损术,是求两个正整数的最大公约数的算法,秦九韶算法是求多项式的值的算法,将这些算法转化为程序,就可以由计算机来完成相关运算。

人们为了计数和运算方便,约定了各种进位制,本节课我们来共同学习《进位制》你都了解那些进位制?比如说?在日常生活中,我们最熟悉、最常用的是十进位制,据说这与古人曾以手指计数有关;由于计算机的计算与记忆元件特点,计算机上通用的是二进位制;一周七天是七进位;一年十二个月〔生肖、一打〕是十二进制;旧式的称是十六进制;〔老称一斤为16两,故而有了半斤八两之说〕、24进制〔节气〕一小时六十分、角度的单位是六十进位制。

二进制是有德国数学家莱布尼兹发明的。

第一台计算机ENIAC〔埃尼阿克〕用的就是十进制。

计算机之父冯·诺伊曼研究后,提出改进意见,用二进制替代十进制。

主要原因①二进制只有0和1两个数字,要得到两种不同稳定状态的电子器件很容易,而且制造简单,可靠性高;②各种计数法中,二进制运算规那么简单。

如:十进 制乘法叫九九表,二进制只有4句。

人教版高中数学必修三课件:1.3 算法案例(共55张PPT)

人教版高中数学必修三课件:1.3 算法案例(共55张PPT)

解:用辗转相除法求最大公约数:612=468×1+144,468=144×3+36,144=36×4,即612
和468的最大公约数是36. 用更相减损术检验:612和468均为偶数,两次用2约简得153和117,153-117=36,11736=81,81-36=45,45-36=9,36-9=27,27-9=18,18-9=9,所以612和468的最大公约数为
转化为求n个一次多项式的值.
预习探究
知识点二 进位制
1.进位制:进位制是为了计数和运算方便而约定的记数系统,约定“满k进一”就 是 k进制 ,k进制的基数(大于1的整数)就是 k . 2.将k进制数化为十进制数的方法:先把k进制数写成各位上的数字与k的幂的乘积之和 的形式,再按照十进制数的运算规则计算出结果. 3.将十进制数化为k进制数的方法是 除k取余法 .即用k连续去除十进制数所得 的 商 ,直到商为零为止,然后把各步得到的余数 倒序 写出.所得到的就是相应的k 进制数. 4.k进制数之间的转化:首先转化为十进制数,再转化为 k进制数.
第一章 算法初步
1.3 算法案例 第2课时 秦九韶算法与进位制
预习探究
知识点一 秦九韶算法
1.秦九韶算法是我国南宋数学家秦九韶在他的著作《数书九章》中提出的一 个用于计算多项式值的方法. 2.秦九韶算法的方法: 把一个n次多项式f(x)=anxn+an-1xn-1+…+a1x+a0 改写成下列的形式: f(x)=(anxn-1+an-1xn-2+…+a1)x+a0= ((anxn-2+an-1xn-3+…+a2)x+a1)x+a0 =…=

高中数学必修三教案-算法案例

高中数学必修三教案-算法案例

教学目标:1.理解不定方程的算法中蕴含的数学原理,并能根据这些原理进行2.理解不定方程的算法的方法与步骤.3.能根据算法语句与伪代码语句的知识设计完整的流程图并写出伪代码语句算法程序.4.使学生初步掌握不定方程的算法设计和列举法的基本思想.教学方法:1.通过讲解中国古代的一个有趣的故事的方法引入新知识,可以使学生容易接受,易于激发学生的求知欲.2.教学中利用探索性教学法,可以加深学生对不定方程的算法的理解,有利于培养学生的理性思维和实践能力.3.通过本节课的学习,使学生进一步体会观察、比较、归纳、分析等一般科学方法的运用.教学过程:一、问题情境情境:韩信是秦末汉初的著名军事家.据说有一次汉高祖刘邦在卫士的簇拥下来到练兵场,刘邦问韩信有什么方法,不要逐个报数,就能知道场上的士兵的人数.韩信先令士兵排成3列纵队,结果有2个人多余;接着立即下令将队形改为5列纵队,这一改,又多出3人;随后他又下令改为7列纵队,这次又剩下2人无法成整行.二、学生活动1.同学们想一想,韩信是如何得出正确的人数的?2.类似的问题最早出现在我国的《算经十书》之一的《孙子算经》中原文是:“今有物,不知其数,三三数之,剩二,五五数之,剩三,七七数之,剩二,问物几何?答曰:「二十三」”3.孙子算经的作者及确实着作年代均不可考,不过根据考证,着作年代不会在晋朝之後,以这个考证来说上面这种问题的解法,中国人发现得比西方早,所以这个问题的推广及其解法,被称为中国剩余定理.中国剩余定理(Chinese Remainder Theorem )在近代抽象代数学中占有一席非常重要的地位;4.该问题的完整的表述,后来经过宋朝数学家秦九韶的推广,又发现了一种算法,叫做“大衍求一术”.在中国还流传着这么一首歌诀:三人同行七十稀,五树梅花廿一枝, 七子团圆月正半, 除百零五便得知. 它的意思是说:将某数(正整数)除以3所得的余数乘以70,除以5所得的余数乘以21,除以7所得的余数乘以15,再将所得的三个积相加,并逐次减去105,减到差小于105为止. 所得结果就是某数的最小正整数值.用上面的歌诀来算《孙子算经》中的问题,便得到算式:2×70+3×21+2×15=233,233-105×2=23,即所求物品最少是23件.三、建构教学 “孙子问题”相当于求关于,,x y z 的不定方程组的325372m x m y m z =+⎧⎪=+⎨⎪=+⎩的正整数解;设所求的数为m ,根据题意m 应该同时满足下列三个条件:①m 被3除后余2,即mod(,3)2m =;②m 被5除后余3,即mod(,5)3m =;③m 被7除后余2,即mod(,7)2m =;用自然语言可以将算法写为:1S 1m ←2S 1m m ←+3S 如果mod(,3)2m =且mod(,5)3m =且mod(,7)2m =则执行4S ,否则执行2S ;4S 输出m伪代码:1m ←DO1m m ←+Loop Until mod(,3)2m =且mod(,5)3m =且mod(,7)2m =Print m流程图为:四、数学运用例题 有3个连续的自然数,其中最小的能被15整除,中间的能被17整除,最大的能被19整除,求满足要求的一组三个连续的自然数.伪代码:思考:以下伪代码是否可行? ka kWhile Mod(a +1,17)≠0 orMod(a +2,19)≠0 k k +1a kEnd WhilePrint a ,a +1,a +2五、要点归纳与方法小结本节课学习了以下内容:1.中国数学在世界数学史上的巨大贡献;2.实际问题的分析和解决问题过程;3.算法的表示及语句的运用.。

人教版高中数学必修三第一章第3节 算法案例 课件(共18张PPT)

人教版高中数学必修三第一章第3节 算法案例  课件(共18张PPT)

输入a,k,n
s1,输入a,b,n的值。
b=0
s2,赋值b=0,i=1。
i=1
s3,b=b+ai·ki-1,i=i+1。
s4,判断i>n是否成立。若 是,则执行s5;否则, 返回s3。
s5,输出b的值。
把a的右数第i位数字赋给t
b=b+t·ki-1
i=i+1 N
i>n? Y 输出b
结束
设计一个算法,把k进制数a(共有n 位数)转化成十进制数b。
例2:把89化为五进制的数. 解:以5作为除数,相应的运算式为:
89 = 5 17 + 4 = 5 (5 3 + 2) + 4 = 3 52 + 2 5 + 4 = 324(5)
5 89 5 17 53
0
余数
4 2 3
∴ 89=324(5).
例3:把89化为二进制的数.
分析:把89化为二进制的数,需想办法将 89先写成如下形式
k进制数转化为十进制数的方法
先把k进制的数表示成不同位上数字 与基数k的幂的乘积之和的形式,即
anan-1…a1a0(k) =an×kn+an-1×kn-1+…+a1×k1+a0×k0 . 再按照十进制数有n位数)转
化成十进制数b。
开始
算法步骤:
第3节 算法案例
进位制
学习目标:
• 1. 了解进位制的概念,学会表示进位制数
• 2. 理解并掌握各种进位制与十进制之间转换的规 律,会利用各种进位制与十进制之间的联系进行各 种进位制之间的转换.
• 3. 了解各种进位制与十进制之间互相转换的算法, 程序框图和程序

人教高中数学必修三-A版-1-3算法案例课件(1)(共41张)

人教高中数学必修三-A版-1-3算法案例课件(1)(共41张)
第二步: 以较大的数减去较小的数,接着把 较小的数与所得的差比较,并以大数减小数。继 续这个操作,直到所得的数相等为止,则这个数 (等数)就是所求的最大公约数。
例2 用更相减损术求98与63的最大公约数. 解: 由于63不是偶数,把98和63以大数
减小数,并辗转相减,
即: 98-63=35; 63-35=28; 35-28=7; 28-7=21; 21-7=14; 14-7=7.
〖研探新知〗
1.辗转相除法: 例1 求两个正数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. 则37为8251与6105的最大公约数。
(c)情感态度与价值观 1.通过阅读中国古代数学中的算法案例,体会中
国古代数学对世界数学发展的贡献。 2.在学习古代数学家解决数学问题的方法的过程
中培养严谨的逻辑思维能力,在利用算法解决数学问题 的过程中培养理性的精神和动手实践的能力。 二、教学重难点
重点: 理解辗转相除法与更相减损术求最大公约数 的方法。
解法二:列表
原多项式 的系数
2 -5 -4 3 -6 7
x=5
10 25 105 540 2670
2 5 21 108 534 2677
所以,当x=5时,多项式的值是2677. 多项式
的值.
练一练:用秦九韶算法求多项式 f(x)=2x6-5x5-4x3+3x2-6x当x=5时的值.
解:原多项式先化为:
[问题]画出程序框图,表示用秦九韶算法求5次多 项式f(x)=a5x5+a4x4+a3x3+a2x2+a1x+a0当x=x0 (x0是任意实数)时的值的过程,然后写出程序.

人教版高中数学必修三 算法案例(进位制)优质教案

人教版高中数学必修三 算法案例(进位制)优质教案

第3课时案例3 进位制(一)导入新课情境导入在日常生活中,我们最熟悉、最常用的是十进制,据说这与古人曾以手指计数有关,爱好天文学的古人也曾经采用七进制、十二进制、六十进制,至今我们仍然使用一周七天、一年十二个月、一小时六十分的历法.今天我们来学习一下进位制.(二)推进新课、新知探究、提出问题(1)你都了解哪些进位制?(2)举出常见的进位制.(3)思考非十进制数转换为十进制数的转化方法.(4)思考十进制数转换成非十进制数及非十进制之间的转换方法.活动:先让学生思考或讨论后再回答,经教师提示、点拨,对回答正确的学生及时表扬,对回答不准确的学生提示引导考虑问题的思路.讨论结果:(1)进位制是人们为了计数和运算方便而约定的计数系统,约定满二进一,就是二进制;满十进一,就是十进制;满十二进一,就是十二进制;满六十进一,就是六十进制等等.也就是说:“满几进一”就是几进制,几进制的基数(都是大于1的整数)就是几.(2)在日常生活中,我们最熟悉、最常用的是十进制,据说这与古人曾以手指计数有关,爱好天文学的古人也曾经采用七进制、十二进制、六十进制,至今我们仍然使用一周七天、一年十二个月、一小时六十分的历法.(3)十进制使用0~9十个数字.计数时,几个数字排成一行,从右起,第一位是个位,个位上的数字是几,就表示几个一;第二位是十位,十位上的数字是几,就表示几个十;接着依次是百位、千位、万位……例如:十进制数3 721中的3表示3个千,7表示7个百,2表示2个十,1表示1个一.于是,我们得到下面的式子:3 721=3×103+7×102+2×101+1×100.与十进制类似,其他的进位制也可以按照位置原则计数.由于每一种进位制的基数不同,所用的数字个数也不同.如二进制用0和1两个数字,七进制用0~6七个数字.一般地,若k是一个大于1的整数,那么以k为基数的k进制数可以表示为一串数字连写在一起的形式a n a n-1…a1a0(k)(0<a n<k,0≤a n-1,…,a1,a0<k).其他进位制的数也可以表示成不同位上数字与基数的幂的乘积之和的形式,如110 011(2)=1×25+1×24+0×23+0×22+1×21+1×20,7 342(8)=7×83+3×82+4×81+2×80.非十进制数转换为十进制数比较简单,只要计算下面的式子值即可:a n a n-1…a1a0(k)=a n×k n+a n-1×k n-1+…+a1×k+a0.第一步:从左到右依次取出k进制数a n a n-1…a1a0(k)各位上的数字,乘以相应的k的幂,k的幂从n开始取值,每次递减1,递减到0,即a n×k n,a n-1×k n-1,…,a1×k,a0×k0;第二步:把所得到的乘积加起来,所得的结果就是相应的十进制数.(4)关于进位制的转换,教科书上以十进制和二进制之间的转换为例讲解,并推广到十进制和其他进制之间的转换.这样做的原因是,计算机是以二进制的形式进行存储和计算数据的,而一般我们传输给计算机的数据是十进制数据,因此计算机必须先将十进制数转换为二进制数,再处理,显然运算后首次得到的结果为二进制数,同时计算机又把运算结果由二进制数转换成十进制数输出.1°十进制数转换成非十进制数把十进制数转换为二进制数,教科书上提供了“除2取余法”,我们可以类比得到十进制数转换成k进制数的算法“除k取余法”.2°非十进制之间的转换一个自然的想法是利用十进制作为桥梁.教科书上提供了一个二进制数据与16进制数据之间的互化的方法,也就是先由二进制数转化为十进制数,再由十进制数转化成为16进制数.(三)应用示例思路1例1 把二进制数110 011(2)化为十进制数.解:110 011(2)=1×25+1×24+0×23+0×22+1×21+1×20=1×32+1×16+1×2+1=51.点评:先把二进制数写成不同位上数字与2的幂的乘积之和的形式,再按照十进制的运算规则计算出结果.变式训练设计一个算法,把k进制数a(共有n位)化为十进制数b.算法分析:从例1的计算过程可以看出,计算k进制数a的右数第i位数字a i与k i-1的乘积a i·k i-1,再将其累加,这是一个重复操作的步骤.所以,可以用循环结构来构造算法.算法步骤如下:第一步,输入a,k和n的值.第二步,将b的值初始化为0,i的值初始化为1.第三步,b=b+a i·k i-1,i=i+1.第四步,判断i>n是否成立.若是,则执行第五步;否则,返回第三步.第五步,输出b的值.程序框图如下图:程序:INPUT “a,k,n=”;a,k,nb=0i=1t=a MOD 10DOb=b+t*k^(i-1)a=a\\10t=a MOD 10i=i+1LOOP UNTIL i>nPRINT bEND例2 把89化为二进制数.解:根据二进制数“满二进一”的原则,可以用2连续去除89或所得商,然后取余数.具体计算方法如下:因为89=2×44+1,44=2×22+0,22=2×11+0,11=2×5+1,5=2×2+1,2=2×1+0,1=2×0+1,所以89=2×(2×(2×(2×(2×2+1)+1)+0)+0)+1=2×(2×(2×(2×(22+1)+1)+0)+0)+1=…=1×26+0×25+1×24+1×23+0×22+0×21+1×20=1 011 001(2).这种算法叫做除2取余法,还可以用下面的除法算式表示:把上式中各步所得的余数从下到上排列,得到89=1 011 001(2).上述方法也可以推广为把十进制数化为k进制数的算法,称为除k取余法.变式训练设计一个程序,实现“除k取余法”.算法分析:从例2的计算过程可以看出如下的规律:若十制数a除以k所得商是q0,余数是r0,即a=k·q0+r0,则r0是a的k进制数的右数第1位数.若q0除以k所得的商是q1,余数是r1,即q0=k·q1+r1,则r1是a的k进制数的左数第2位数.……若q n-1除以k所得的商是0,余数是r n,即q n-1=r n,则r n是a的k进制数的左数第1位数.这样,我们可以得到算法步骤如下:第一步,给定十进制正整数a和转化后的数的基数k.第二步,求出a除以k所得的商q,余数r.第三步,把得到的余数依次从右到左排列.第四步,若q≠0,则a=q,返回第二步;否则,输出全部余数r排列得到的k进制数.程序框图如下图:程序:INPUT “a,k=”;a,kb=0i=0DOq=a\\kr=a MOD kb=b+r*10^ii=i+1a=qLOOP UNTIL q=0PRINT bEND思路2例1 将8进制数314 706(8)化为十进制数,并编写出一个实现算法的程序.解:314 706(8)=3×85+1×84+4×83+7×82+0×81+6×80=104 902.所以,化为十进制数是104 902.点评:利用把k进制数转化为十进制数的一般方法就可以把8进制数314 706(8)化为十进制数.例2 把十进制数89化为三进制数,并写出程序语句.解:具体的计算方法如下:89=3×29+2,29=3×9+2,9=3×3+0,3=3×1+0,1=3×0+1,所以:89(10)=10 022(3).点评:根据三进制数满三进一的原则,可以用3连续去除89及其所得的商,然后按倒序的顺序取出余数组成数据即可.(四)知能训练将十进制数34转化为二进制数.分析:把一个十进制数转换成二进制数,用2反复去除这个十进制数,直到商为0,所得余数(从下往上读)就是所求.解:即34(10)=100 010(2)(五)拓展提升把1 234(5)分别转化为十进制数和八进制数.解:1 234(5)=1×53+2×52+3×5+4=194.则1 234(5)=302(8)所以,1 234(5)=194=302(8)点评:本题主要考查进位制以及不同进位制数的互化.五进制数直接利用公式就可以转化为十进制数;五进制数和八进制数之间需要借助于十进制数来转化.(六)课堂小结(1)理解算法与进位制的关系.(2)熟练掌握各种进位制之间转化.(七)作业习题1.3A组3、4.。

人教A版高中数学必修3《算法案例》课件

人教A版高中数学必修3《算法案例》课件

=5×(5×(5×(5 ×(5 +1) +1 )+1)+1) +1
算法1:
因为f(x) =x5+x4+x3+x2+x+1 所以f(5)=55+54+53+52+5+1
=3125+625+125+25+5+1 = 3906
共做了1+2+3+4=10次乘法运算,5次加法运算。
算法2:
f(5)=55+54+53+52+5+1
第三步:输入i次项的系数an.
第四步:v=vx+ai, i=i-1.
第五步:判断i是否大于或等于0,若是,则返回第 三步;否则,输出多项式的值v。
(2)程序框图:
开始
输入n,an,x V=an
i=n-1
i>=0? N
输出v 结束
i=i-1
v=vx+ai
输入ai
Y
(3)程序:
INPUT “n=”;n INPUT “an=“;a INPUT “x=“;x v=a i=n-1 WHILE i>=0
......
(.a n . x .a n . 1 ) x . a .n 2 ( ) x .. a . 1 ) x . a .0.
f( x ) (.a n . x . a n 1 . ) x .a n . 2 ) x ( .. a . 1 ) x . a . 0.
要求多项式的值,应该先算最内层的一次多项式的值,即
的一种改 写方式? 最后的结
f(x ) a n x n a n 1 x n 1 .. .a 1 .x .a 0 . 果是什么?
( a n x n 1 a n 1 x n 2 .. .a 1 ) .x .a .0

最新人教版普通高中课程标准实验教科书必修3《算法案例——辗转相除法和更相减损术》说课稿

最新人教版普通高中课程标准实验教科书必修3《算法案例——辗转相除法和更相减损术》说课稿

课题:算法案例——辗转相除法和更相减损术教材:人教版普通高中课程标准实验教科书必修3第一章第1.3节1、教材分析与传统教学内容相比,《算法初步》为新增内容,算法是计算机科学的重要基础,算法思想已经渗透到社会的方方面面,算法思想也逐渐成为每个现代人应具有的数学素养。

算法思想即体现了时代的特点,也是中国古代数学灿烂的历史和巨大的贡献在新层次上的复兴。

本节内容是探究古代算法案例――辗转相除法和更相减损术,经历设计算法解决问题的全过程,体会算法在解决问题中的重要作用,体会算法的基本思想,提高逻辑思维能力,发展有条理的思考和数学表达能力,巩固算法三种描述性语言(自然语言、图形语言和程序语言),提高学生分析和解决问题的能力。

2、教学目标分析:(1)知识目标:①理解辗转相除法和更相减损术求两个正数的最大公约数的原理;②能用写算法步骤、画流程图和编程序表达辗转相除法;说明:在这里,理解案例中的新的知识是理解算法的必要的前提,但重要的是理解案例中的算法核心思想,而不是强调对案例中新知识的记忆和灵活运用。

(2)能力目标:①培养学生把具体问题抽象转化为算法语言的能力;②培养学生自主探索和合作学习的能力。

(3)情感目标:①使学生进一步了解从具体到一般思想方法。

②体会中国古代数学对世界数学的巨大贡献,培养爱国思想和学习数学的积极性。

3、教学重点与难点分析:(1)教学重点:能用写算法步骤、画流程图和编程序表达辗转相除法及更相减损术。

(体会算法解决问题的全过程)(2)教学难点:用不同逻辑结构的程序框图表达算法;4、教学方法与手段(1)、教法:阅读指导,以问题为载体,有引导的对话,让学生经历知识的形成过程和发展过程,有利于学生活动的充分展开。

(2)、学法:以观察、讨论、思考、分析、动手操作、自主探索、合作学习多种形式相结合,引导学生多角度、多层面认识事物,突破教学难点。

5、教学过程设计分析:辅助工具:ppt课件知识准备:带余除法6、评价分析:(1)、指导思想:①新知识与旧知识相结合的原则;②掌握知识与发展智力、能力相统一的原则;③教师的主导作用与学生的主体作用相结合的原则。

必修三131算法案例辗转相除法

必修三131算法案例辗转相除法

辗转相处法
两个重要定理 一般定理: 如果a是任一整数而b是任一大于零的整数,则我们总能
找到一整数q,使 a=bq+r,这里r是满足不等式0≤r<b的一个 整数(余数)。
二、最大公因子的表示方法: 如果整数a和b的最大公因子是d,则表示为d=(a,b)
给定a和b(a>=b)两个整数,求最大公因子d。 根据上边给的定理,可以将a写成 a=bq+r 辗转相除法是告诉我们: (a,b)=(b,r) 即a和b的最大公因数和b和r(r是a除以b的余数)的最大
因子,反之亦然。这样由于a和b的全体公因子集合与 b和r的全体公因子集合相同,所以a和b的最大公因子 必须等于b和r的最大公因子,这就证明了 (a,b)=(b,r)。
完整的过程 8251=6105×1+2146
例2 用辗转相除法求225和135的最大公约数 225=135×1+90
6105=2146×2+1813
S1:用大数除以小数
S2:除数变成被除数,余数变成除数
S3:重复S1,直到余数为0
利用辗转相除法求两数4081与20723的最大公约数 思考:你能把辗转相除法编成程序吗?
算法1: 第一步:任意给定两个正整数; 第二步:用两数中较大那个除以较小那个,求得
商和余数; 第三步:比较上一步的余数与除数的大小关系,
1、求两个正整数的最大公约数
(1)求25和35的最大公约数 (2)求49和63的最大公约数
(1)5 25 35 57
(2)7 49 63 79
所以,25和35的 最大公约数为5
所以,49和63的 最大公约数为7
2、求8251和6105的最大公约数
辗转相除法(欧几里得算法)

人教A版高中数学必修3第一章1.3 算法案例课件

人教A版高中数学必修3第一章1.3 算法案例课件
r =m MOD n m=n n=r WEND PRINT m END
问题提出:除了用上述算法求两个数的最大公 约数之外还有没有别的算法?
点拨:用“更相减损术”:更相减损术,是 我国数学家刘徽的专著《九章算术》中记 载的.更相减损术求最大公约数的步骤如 下:可半者半之,不可半者,副置分母分 子之数,以少减 多,更相减损,求其等也., 以等数约之.
148 37 4
(148,37) 37
(8251,6105) (148,37) 37
所以
完整的过程 8251=6105×1+2146 6105=2146×2+1813 2146=1813×1+333
探究1:用辗转相除法求225 和135的最大公约数
225=135×1+90
135=90×1+45
关于辗转相除法的算理问题
m n q r (0 r n) 若r 0,则(m, n) n 若r 0,则(m, n) (n, r)
以上满足:m, n, q N, r N
例题讲解
例1:用辗转相除法求8251与6105的 最大公约数.
8251 61051 2146 (8251, 6105) (6105, 2146)
1.3.1算法案例
辗转相除法与更相减损术
算法的历史背景
人类最早关于算法的记录是在两河流域发现的公元前两三 千年的黏土板,其中一个典型的例子就是计算利息何时能 够等于本金。在公元前2100年左右,美索不达米亚人已有 了乘法表,其中使用着六十进位制的算法。
算法早期发展中值得一提的是公元前300年古希腊数学家 欧几里得提出的欧几里得算法(辗转相除法),用来求两 个正整数的最大公约数。
(2)二者的实质都是递推的过程.
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

例3 用更相减损术求98与63的最大公约数
解:由于63不是偶数,把98和63 以大数减小数,并辗转相减
98-63=35 63-35=28 35-28=7 28-7=21 21-7=14 14-7=7
所以,98和63?几次加法?
这种算法用了几次乘法?几次加法? 5次乘法,5次加法.
S1:用大数除以小数 S2:除数变成被除数,余数变成除数 S3:重复S1,直到余数为0
辗转相除法是一个反复执行直到余数等于0停止
的步骤,这实际上是一个循环结构。m = n × q + r
用程序框图表示出右边的过程
8251=6105×1+2146
r=m MOD n m=n n=r
r=0?


6105=2146×2+1813 2146=1813×1+333 1813=333×5+148
53 0
余数
4 2 3
所以,89=324(5)。
练习:完成下列进位制间的转化
(1) 154(6)=_____ (7) (2) 412(5) =_____ (7) (3) 119(10)=_____ (6)
将k进制数转为十进制数:
anan1 a1a0(k)
ank n an1k n1 a1k1 a0k 0
例1 把二进制数110011(2)化为十进制数. 解:110011(2)=1×25+1 ×24+ 0×23+0 ×22 +
1×21+1 ×20 =51
练习:把下列数化为十进制数
完整的过程 8251=6105×1+2146
6105=2146×2+1813
2146=1813×1+333
1813=333×5+148
333=148×2+37
148=37×4+0
显然37是148和37的最大公约 数,也就是8251和6105的最大 公约数
思考1:从上面的两个例子可以看出计 算的规律是什么?
333=148×2+37 148=37×4+0
《九章算术》——更相减损术
算理:可半者半之,不可半者,副置分母、子之数, 以少减多,更相减损,求其等也,以等数约之。
第一步:任意给顶两个正整数;判断他们是否都是 偶数。若是,则用2约简;若不是则执行第二步。
第二步:以较大的数减较小的数,接着把所得的差 与较小的数比较,并以大数减小数。继续这个操作, 直到所得的减数和差相等为止,则这个等数就是所 求的最大公约数。
anan1 a1a0(k )
(0 an k,0 an1,a1, a0 k)
3721=3×103+7 ×102+2 ×101+1 ×100
110011(2)=1×25+1 ×24+ 0×23+0 ×22 + 1×21+1 ×20
7342(8)=7×83+3 ×82+4 ×81+2×80
算法案例
• 辗转相除法 • 更相减损术 • 秦九韶算法 • 进位制
辗转相除法
1、求两个正整数的最大公约数 (1)求25和35的最大公约数 (2)求49和63的最大公约数
(1) 5 25 35 57
所以,25和35的最大公约数为5
2、求8251和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的最大公约数。
(1) 1011010(2) (2) 10212(3) (3) 2376(3)
将十进制数转为k进制数: 除k取余法
例2 把89化为二进制数. 除2取余法 例3 把89化为五进制数. 除5取余法
2、十进制转换为二进制 例2 把89化为二进制数
2
89 余数
2
48
1
2 22
0
2 11
0
注意:
25
1
22
进位制是人们为了计数和运算便而约定的 记数系统.“满十进一”就是十进制,“满
二进一”就是二进制,“满k进一”就是k
进制,因此k进制需数k个数字.
判断下列数表达是否正确?
(1) 12(2) (2) 061(7)
(3) 291(8)
一般地,若k是一个大于1的整数,那么以 k为基数的k进制数可以表示为一串数字连 写在一起的形式:
1
21
0
01
1.最后一步商为0,
2.将上式各步所得的余数从下到上排列,得到:89=1011001(2)
练习 将下面的十进制数化为二进制数? (1)10 (2)20 (3)128
(4)256
3、十进制转换为其它进制 例3 把89化为五进制数 解: 根据除k取余法
以5作为除数,相应的除法算式为:
5 89 5 17
相关文档
最新文档