本资料来自于资源最齐全的21世纪教育网www.21cnjy.com
双峰一中高一数学必修三教案
课题
§1.3.1
辗转相除法与更相减损术
课型
新课
教学目标
(1):理解辗转相除法与更相减损术中蕴含的数学原理,并能根据这些原理进行算法分析。(2)基本能根据算法语句与程序框图的知识设计完整的程序框图并写出算法程序。(3)在辗转相除法与更相减损术求最大公约数的学习过程中对比我们常见的约分求公因式的方法,比较它们在算法上的区别,并从程序的学习中体会数学的严谨,领会数学算法计算机处理的结合方式,初步掌握把数学算法转化成计算机语言的一般步骤。
教学过程
教学内容
备注
一、自主学习
阅读教材P34-P37请思考以下问题:(1)辗转相除法的运算原理(2)更相减损术的运算原理
二、质疑提问
1.在初中,我们已经学过求最大公约数的知识,你能求出18与30的公约数吗?2.我们都是利用找公约数的方法来求最大公约数,如果公约数比较大而且根据我们的观察又不能得到一些公约数,我们又应该怎样求它们的最大公约数?比如求8251与6105的最大公约数?这就是我们这一堂课所要探讨的内容。
三、问题探究
知识探究(一):辗转相除法例1
求两个正数8251和6105的最大公约数。解:8251=6105×1+2146显然8251的最大公约数也必是2146的约数,同样6105与2146的公约数也必是8251的约数,所以8251与6105的最大公约数也是6105与2146的最大公约数。6105=2146×2+1813
2146=1813×1+3331813=333×5+148
333=148×2+37148=37×4+0则37为8251与6105的最大公约数。以上我们求最大公约数的方法就是辗转相除法。也叫欧几里德算法,它是由欧几里德在公元前300年左右首先提出的。利用辗转相除法求最大公约数的步骤如下:第一步:用较大的数m除以较小的数n得到一个商q0和一个余数r0;第二步:若r0=0,则n为m,n的最大公约数;若r0≠0,则用除数n除以余数r0得到一个商q1和一个余数r1;第三步:若r1=0,则r1为m,n的最大公约数;若r1≠0,则用除数r0除以余数r1得到一个商q2和一个余数r2;……依次计算直至rn=0,此时所得到的rn-1即为所求的最大公约数。(1)辗转相除法的程序框图及程序程序框图:(略)程序:(当循环结构)
直到型结构见书37面。INPUT
“m=”;mINPUT
“n=”;nIF
mTHEN
x=mm=n
n=xEND
IFr=m
MOD
nWHILE
r<>0
r=m
MOD
n
m=nn=rWENDPRINT
mEND练习:利用辗转相除法求两数4081与20723的最大公约数(答案:53)知识探究(二):更相减损术我国早期也有解决求最大公约数问题的算法,就是更相减损术。更相减损术求最大公约数的步骤如下:可半者半之,不可半者,副置分母·子之数,以少减多,更相减损,求其等也,以等数约之。翻译出来为:第一步:任意给出两个正数;判断它们是否都是偶数。若是,用2约简;若不是,执行第二步。第二步:以较大的数减去较小的数,接着把较小的数与所得的差比较,并以大数减小数。继续这个操作,直到所得的数相等为止,则这个数(等数)就是所求的最大公约数。例2
用更相减损术求98与63的最大公约数.解:由于63不是偶数,把98和63以大数减小数,并辗转相减,即:98-63=3563-35=2835-28=728-7=2121-7=1414-7=7所以,98与63的最大公约数是7。练习:用更相减损术求两个正数84与72的最大公约数。(答案:12)比较辗转相除法与更相减损术的区别(1)都是求最大公约数的方法,计算上辗转相除法以除法为主,更相减损术以减法为主,计算次数上辗转相除法计算次数相对较少,特别当两个数字大小区别较大时计算次数的区别较明显。(2)从结果体现形式来看,辗转相除法体现结果是以相除余数为0则得到,而更相减损术则以减数与差相等而得到
四、课堂检测
用辗转相除法求下列各组数的最大公约数,并在自己编写的BASIC程序中验证。(1)225;135
(2)98;196
(3)72;168
(4)153;119
五、小结评价
辗转相除法与更相减损术求最大公约数的计算方法及完整算法程序的编写。对于两个正整数如何选择合适的方法求他们的最大公约数方法适用范围及特点短除法适合两个较小的正整数或两个质因数较少的正整数,简便易操作。穷举法适合计算机操作,但一一验证过于繁琐。辗转相除法适用于两个较大的正整数,以除法为主,辗转相除法计算次数相对较少,特别当两个数字大小差别较大时计算次数较明显。更相减损术适用于两个较大的正整数,更相减损术以减法为主,计算次数上相对于辗转相处法较多。
21世纪教育网
--
中国最大型、最专业的中小学教育资源门户网站。
版权所有@21世纪教育网本资料来自于资源最齐全的21世纪教育网www.21cnjy.com
双峰一中高一数学必修三教案
课题
§1.3.2
秦九邵算法
课型
新课
教学目标
(一)了解秦九韶算法的计算过程,并理解利用秦九韶算法可以减少计算次数提高计算效率的实质。(二)模仿秦九韶计算方法,体会古人计算构思的巧妙。(三)通过对秦九韶算法的学习,了解中国古代数学家对数学的贡献,充分认识到我国文化历史的悠久。充分认识信息技术对数学的促进。
教学过程
教学内容
备注
一、自主学习
阅读教材P37-P39思考以下问题:(1)秦九邵算法的运算原理(2)
秦九邵算法的程序框图和程序
二、质疑提问
1.辗转相除法和更相减损术,是求两个正整数的最大公约数的优秀算法,我们将算法转化为程序后,就可以由计算机来执行运算,实现了古代数学与现代信息技术的完美结合.2.对于求n次多项式的值,在我国古代数学中有一个优秀算法,即秦九韶算法,我们将对这个算法作些了解和探究.
三、问题探究
知识探究:秦九邵算法思考1
21325算法1:需要(5+4+3+2)=14次乘法,5次加法算法2:需要5次乘法,5次加法
秦九韶算法思考2
18556思考3:利用后一种算法求多项式f(x)=anxn+an-1xn-1+…+a1x+a0的值,这个多项式应写成哪种形式?f(x)=anxn+an-1xn-1+…+a1x+a0=(anxn-1+an-1xn-2+…+a2x+a1)x+a0=((anxn-2+an-1xn-3+…+a2)x+a1)x+a0=…=(…((anx+an-1)x+an-2)x+…+a1)x+a0.思考4:对于f(x)=(…((anx+an-1)x+an-2)x+…+a1)x+a0,由内向外逐层计算一次多项式的值,其算法步骤如何?
第一步,计算v1=anx+an-1.
第二步,计算v2=v1x+an-2.第三步,计算v3=v2x+an-3.
…第n步,计算vn=vn-1x+a0.思考5:上述求多项式f(x)=anxn+an-1xn-1+…+a1x+a0的值的方法称为秦九韶算法,利用该算法求f(x0)的值,一共需要多少次乘法运算,多少次加法运算?
思考6:在秦九韶算法中,记v0=an,那么第k步的算式是什么?vk=vk-1x+an-k
(k=1,2,…,n)例1
阅读下列程序,说明它解决的实际问题是什么?例2
求多项式,在x=a时的值.
四、课堂检测
1、如果执行右面的程序框图,那么输出的
(
)
A.22
B.46
C.
D.190
答案
C2、某程序框图如图所示,该程序运行后输出的的
值是
(
)A.
B.
C.
D.
【解析】对于,而对于,则
,后面是,不
符合条件时输出的.答案
A
3、阅读上(右)图的程序框图,则输出的S=
(
)
A
26
B
35
C
40
D
57【解析】当时,;当时,;当
时,;当时,;当时,;当时,,故选择C。答案 C4、程序框图上(右)(即算法流程图)如图所示,其输入结果是_______。
【解析】根据流程图可得的取值依次为1、3、7、15、31、63……答案
127点评:秦九韶算法适用一般的多项式f(x)=anxn+an-1xn-1+….+a1x+a0的求值问题。直接法乘法运算的次数最多可到达,加法最多n次。秦九韶算法通过转化把乘法运算的次数减少到最多n次,加法最多n次。5、已知多项式函数f(x)=2x5-5x4-4x3+3x2-6x+7,求当x=5时的函数的值。解析:把多项式变形为:f(x)=
2x5-5x4-4x3+3x2-6x+7=((((2x-5)x-4)x+3)x-6)x+7计算的过程可以列表表示为:多项式x系数2-5-43-67运算运算所得的值10251055402670+变形后x的"系数"25211085342677
5最后的系数2677即为所求的值算法过程:v0=2v1=2×5-5=5v2=5×5-4=21v3=21×5+3=108v4=108×5-6=534v5=534×5+7=2677
五、小结评价
一个算法好坏的一个重要标志是运算的次数,如果一个算法从理论上需要超出计算机允许范围内的运算次数,那么这样的算法就只能是一个理论算法.在多项式求值的各种算法中,秦九韶算法是一个优秀算法.
否
是
21世纪教育网
--
中国最大型、最专业的中小学教育资源门户网站。
版权所有@21世纪教育网本资料来自于资源最齐全的21世纪教育网www.21cnjy.com
双峰一中高一数学必修三教案
课题
§1.3.3
进位制
课型
新课
教学目标
(1)了解各种进位制与十进制之间转换的规律,会利用各种进位制与十进制之间的联系进行各种进位制之间的转换;学习各种进位制转换成十进制的计算方法,研究十进制转换为各种进位制的除k去余法,并理解其中的数学规律.(2)各种进位制之间的互化.(3)除k取余法的理解以及各进位制之间转换的程序框图及其程序的设计.
教学过程
教学内容
备注
一、自主学习
阅读:P40-P45,思考以下问题(1)进位制的概念
(2)k进制化十进制的算法(3)除k取余法
二、质疑提问
知识探究(一):进位制的概念
思考1:进位制是为了计数和运算方便而约定的记数系统,如逢十进一,就是十进制;每七天为一周,就是七进制;每十二个月为一年,就是十二进制,每六十秒为一分钟,每六十分钟为一个小时,就是六十进制;等等.一般地,“满k进一”就是k进制,其中k称为k进制的基数.那么k是一个什么范围内的数?
思考2:十进制使用0~9十个数字,那么二进制、五进制、七进制分别使用哪些数字?
思考3:在十进制中10表示十,在二进制中10表示2.一般地,若k是一个大于1的整数,则以k为基数的k进制数可以表示为一串数字连写在一起的形式:anan-1…a1a0(k).其中各个数位上的数字an,an-1,…,a1,a0的取值范围如何?思考4:十进制数4528表示的数可以写成4×103+5×102+2×101+8×100,依此类比,二进制数110011(2),八进制数7342(8)分别可以写成什么式子?110011(2)=1×25+1×24+0×23+0×22+1×21+1×207342(8)=7×83+3×82+4×81+2×80.思考5:一般地,如何将k进制数anan-1…a1a0(k)写成各数位上的数字与基数k的幂的乘积之和的形式?思考6:在二进制中,0+0,0+1,1+0,1+1的值分别是多少?
三、问题探究
知识探究(二):k进制化十进制的算法
思考1:二进制数110011(2)化为十进制数是什么数?110011(2)=1×25+1×24+0×23+0×22+1×21+1×20
=32+16+2+1=51.
思考2:二进制数右数第i位数字ai化为十进制数是什么数?例1
将下列各进制数化为十进制数.(1)10303(4)
;
(2)1234(5).10303(4)=1×44+3×42+3×40=307.1234(5)=1×53+2×52+3×51+4×50=194.
知识探究(三):除k取余法思考1:二进制数101101(2)化为十进制数是什么数?十进制数89化为二进制数是什么数?思考2:上述化十进制数为二进制数的算法叫做除2取余法,转化过程有些复杂,观察下面的算式你有什么发现吗?
思考3:上述方法也可以推广为把十进制数化为k进制数的算法,称为除k取余法,那么十进制数191化为五进制数是什么数?191=1231(5)例2
将十进制数458分别转化为四进制数和六进制数.458=13022(4)=2042(6)例3
将五进制数30241(5)转化为七进制数.
30241(5)=3×54+2×52+4×5+1=1946.
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.
四、课堂检测
例5.把十进制数89化为三进制数,并写出程序语句.解析:具体的计算方法如下:89=3×29+229=3×9+29=3×3+03=3×1+01=3×0+1所以:89(10)=1011001(3)。点评:根据三进制数满三进一的原则,可以用3连续去除89及其所的得的商,然后按倒序的先后顺序取出余数组成数据即可。例6.将8进制数314706(8)化为十进制数,并编写出一个实现算法的程序。解析:314706(8)=3×85+1×84+4×83+7×82+0×81+6×80=104902。所以,化为十进制数是104902。点评:利用把k进制数转化为十进制数的一般方法就可以把8进制数314706(8)化为十进制数,然后根据该算法,利用GET函数,应用循环结构可以设计程序。
五、小结评价
1.利用除k取余法,可以把任何一个十进制数化为k进制数,并且操作简单、实用.2.通过k进制数与十进制数的转化,我们也可以将一个k进制数转化为另一个不同基数的k进制数.
开始
输入:m,n
r=m
MOD
n
m=n
n=r
r=0
输出:
开始
Y
N
21世纪教育网
--
中国最大型、最专业的中小学教育资源门户网站。
版权所有@21世纪教育网