人教出版高级中学数学必修3全部资料教案.doc
-!教学过程第1课时 案例1 辗转相除法与更相减损术导入新课 思路1(情境导入) 大家喜欢打乒乓球吧,由于东、西方文化及身体条件的不同,西方人喜欢横握拍打球,东方人喜欢直握拍打球,对于同一个问题,东、西方人处理问题方式是有所不同的.在小学,我们学过求两个正整数的最大公约数的方法:先用两个数公有的质因数连续去除,一直除到所得的商是互质数为止,然后把所有的除数连乘起来. 当两个数公有的质因数较大时(如8 251与6 105),使用上述方法求最大公约数就比较困难.下面我们介绍两种不同的算法辗转相除法与更相减损术,由此可以体会东、西方文化的差异. 思路2(直接导入) 前面我们学习了算法步骤、程序框图和算法语句.今天我们将通过辗转相除法与更相减损术来进一步体会算法的思想.推进新课新知探究提出问题(1)怎样用短除法求最大公约数?(2)怎样用穷举法(也叫枚举法)求最大公约数?(3)怎样用辗转相除法求最大公约数?(4)怎样用更相减损术求最大公约数?讨论结果:(1)短除法 求两个正整数的最大公约数的步骤:先用两个数公有的质因数连续去除,一直除到所得的商是两个互质数为止,然后把所有的除数连乘起来.(2)穷举法(也叫枚举法) 穷举法求两个正整数的最大公约数的解题步骤:从两个数中较小数开始由大到小列举,直到找到公约数立即中断列举,得到的公约数便是最大公约数.(3)辗转相除法 辗转相除法求两个数的最大公约数,其算法步骤可以描述如下: 第一步,给定两个正整数m,n. 第二步,求余数r:计算m除以n,将所得余数存放到变量r中. 第三步,更新被除数和余数:m=n,n=r. 第四步,判断余数r是否为0.若余数为0,则输出结果;否则转向第二步继续循环执行. 如此循环,直到得到结果为止. 这种算法是由欧几里得在公元前300年左右首先提出的,因而又叫欧几里得算法.(4)更相减损术 我国早期也有解决求最大公约数问题的算法,就是更相减损术. 九章算术是中国古代的数学专著,其中的“更相减损术”也可以用来求两个数的最大公约数,即“可半者半之,不可半者,副置分母、子之数,以少减多,更相减损,求其等也.以等数约之.”翻译为现代语言如下: 第一步,任意给定两个正整数,判断它们是否都是偶数,若是,用2约简;若不是,执行第二步. 第二步,以较大的数减去较小的数,接着把所得的差与较小的数比较,并以大数减小数,继续这个操作,直到所得的数相等为止,则这个数(等数)或这个数与约简的数的乘积就是所求的最大公约数.应用示例例1 用辗转相除法求8 251与6 105的最大公约数,写出算法分析,画出程序框图,写出算法程序.解:用两数中较大的数除以较小的数,求得商和余数:8 251=6 1051+2 146.由此可得,6 105与2 146的公约数也是8 251与6 105的公约数,反过来,8 251与6 105的公约数也是6 105与2 146的公约数,所以它们的最大公约数相等.对6 105与2 146重复上述步骤:6 105=2 1462+1 813.同理,2 146与1 813的最大公约数也是6 105与2 146的最大公约数.继续重复上述步骤:2 146=1 8131+333,1 813=3335+148,333=1482+37,148=374. 最后的除数37是148和37的最大公约数,也就是8 251与6 105的最大公约数. 这就是辗转相除法.由除法的性质可以知道,对于任意两个正整数,上述除法步骤总可以在有限步之后完成,从而总可以用辗转相除法求出两个正整数的最大公约数.算法分析:从上面的例子可以看出,辗转相除法中包含重复操作的步骤,因此可以用循环结构来构造算法.算法步骤如下:第一步,给定两个正整数m,n.第二步,计算m除以n所得的余数为r.第三步,m=n,n=r.第四步,若r=0,则m,n的最大公约数等于m;否则,返回第二步.程序框图如下图:程序:INPUT m,nDO r=m MOD n m=n n=rLOOP UNTIL r=0PRINT mEND点评:从教学实践看,有些学生不能理解算法中的转化过程,例如:求8 251与6 105的最大公约数,为什么可以转化为求6 105与2 146的公约数.因为8 251=6 1051+2 146,可以化为8 251-6 1051=2 164,所以公约数能够整除等式两边的数,即6 105与2 146的公约数也是8 251与6 105的公约数.变式训练 你能用当型循环结构构造算法,求两个正整数的最大公约数吗?试画出程序框图和程序.解:当型循环结构的程序框图如下图:程序:INPUT m,nr=1WHILE r0 r=m MOD n m=n n=rWENDPRINT mEND例2 用更相减损术求98与63的最大公约数.解:由于63不是偶数,把98和63以大数减小数,并辗转相减,如下图所示.98-63=3563-35=2835-28=728-7=2121-7=1414-7=7所以,98和63的最大公约数等于7.点评:更相减损术与辗转相除法的比较:尽管两种算法分别来源于东、西方古代数学名著,但是二者的算理却是相似的,有异曲同工之妙主要区别在于辗转相除法进行的是除法运算,即辗转相除;而更相减损术进行的是减法运算,即辗转相减,但是实质都是一个不断的递归过程变式训练 用辗转相除法或者更相减损术求三个数324,243,135的最大公约数.解:324=243181,243=8130,则324与243的最大公约数为81.又135=81154,81=54127,54=2720,则 81 与 135的最大公约数为27.所以,三个数324、243、135的最大公约数为27.另法:324243=81,24381=162,16281=81,则324与243的最大公约数为81.13581=54,8154=27,5427=27,则81与135的最大公约数为27.所以,三个数324、243.135的最大公约数为27.例3 (1)用辗转相除法求123和48的最大公约数.(2)用更相减损术求80和36的最大公约数.解:(1)辗转相除法求最大公约数的过程如下:12324827,4812721,271216,21363,623+0,最后6能被3整除,得123和48的最大公约数为3.(2)我们将80作为大数,36作为小数,因为80和36都是偶数,要除公因数2.802=40,362=18.40和18都是偶数,要除公因数2.402=20,182=9.下面来求20与9的最大公约数,209=11,119=2,92=7,72=5,52=3,32=1,21=1,可得80和36的最大公约数为221=4.点评:对比两种方法控制好算法的结束,辗转相除法是到达余数为0,更相减损术是到达减数和差相等.变式训练 分别用辗转相除法和更相减损术求1 734,816的最大公约数解:辗转相除法:1 734=8162+102,816=1028(余0),1 734与816的最大公约数是102更相减损术:因为两数皆为偶数,首先除以2得到867,408,再求867与408的最大公约数867-408=459,459-408=51,408-51=357,357-51=306,306-51=255,255-51=204,204-51=153,153-51=102,102-51=51.1 734与816的最大公约数是512=102利用更相减损术可另解:1 734816918,918816102,816102714,714102612,612102510,510102408,408102306,306102204,204102102.1 734与816的最大公约数是102知能训练 求319,377,116的最大公约数解:377=3191+58,319=585+29,58=292.377与319的最大公约数为29,再求29与116的最大公约数116=294.29与116的最大公约数为29.377,319,116的最大公约数为29.拓展提升 试写出利用更相减损术求两个正整数的最大公约数的程序解:更相减损术程序:INPUT “m,n=”;m,nWHILE mnIF mn THENm-nELSEm=n-mEND IFWENDPRINT mEND课堂小结(1)用辗转相除法求最大公约数.(2)用更相减损术求最大公约数.思想方法:递归思想.作业 分别用辗转相除法和更相减损术求261,319的最大公约数.分析:本题主要考查辗转相除法和更相减损术及其应用使用辗转相除法可依据m=nq+r,反复执行,直到r=0为止;用更相减损术就是根据m-n=r,反复执行,直到n=r为止解:辗转相除法:319=2611+58,261=584+29,58=292.319与261的最大公约数是29更相减损术:319-261=58,261-58=203,203-58=145,145-58=87,87-58=29,58-29=29,319与261的最大公约数是29设计感想 数学不仅是一门科学,也是一种文化,本节的引入从东、西方文化的不同开始,逐步向学生渗透数学文化.从知识方面主要学习用两种方法求两个正整数的最大公约数,从思想方法方面,主要学习递归思想.本节设置精彩例题,不仅让学生学到知识,而且让学生进一步体会算法的思想,培养学生的爱国主义情操第2课时 案例2 秦九韶算法导入新课 思路1(情境导入) 大家都喜欢吃苹果吧,我们吃苹果都是从外到里一口一口的吃,而虫子却是先钻到苹果里面从里到外一口一口的吃,由此看来处理同一个问题的方法多种多样.怎样求多项式f(x)=x5+x4+x3+x2+x+1当x=5时的值呢?方法也是多种多样的,今天我们开始学习秦九韶算法. 思路2(直接导入) 前面我们学习了辗转相除法与更相减损术, 今天我们开始学习秦九韶算法.推进新课新知探究提出问题(1)求多项式f(x)=x5+x4+x3+x2+x+1当x=5时的值有哪些方法?比较它们的特点.(2)什么是秦九韶算法?(3)怎样评价一个算法的好坏?讨论结果:(1)怎样求多项式f(x)=x5+x4+x3+x2+x+1当x=5时的值呢? 一个自然的做法就是把5代入多项式f(x),计算各项的值,然后把它们加起来,这时,我们一共做了1+2+3+4=10次乘法运算,5次加法运算. 另一种做法是先计算x2的值,然后依次计算x2x,(x2x)x,(x2x)x)x的值,这样每次都可以利用上一次计算的结果,这时,我们一共做了4次乘法运算,5次加法运算. 第二种做法与第一种做法相比,乘法的运算次数减少了,因而能够提高运算效率,对于计算机来说,做一次乘法运算所用的时间比做一次加法运算要长得多,所以采用第二种做法,计算机能更快地得到结果.(2)上面问题有没有更有效的算法呢?我国南宋时期的数学家秦九韶(约12021261)在他的著作数书九章中提出了下面的算法: 把一个n次多项式f(x)=anxn+an-1xn-1+a1x+a0改写成如下形式:f(x)=anxn+an-1xn-1+a1x+a0=(anxn-1+an-1xn-2+a1)x+ a0=(anxn-2+an-1xn-3+a2)x+a1)x+a0=(anx+an-1)x+an-2)x+a1)x+a0.求多项式的值时,首先计算最内层括号内一次多项式的值,即v1=anx+an-1,然后由内向外逐层计算一次多项式的值,即v2=v1x+an-2,v3=v2x+an-3,vn=vn-1x+a0,这样,求n次多项式f(x)的值就转化为求n个一次多项式的值.上述方法称为秦九韶算法.直到今天,这种算法仍是多项式求值比较先进的算法.(3)计算机的一个很重要的特点就是运算速度快,但即便如此,算法好坏的一个重要标志仍然是运算的次数.如果一个算法从理论上需要超出计算机允许范围内的运算次数,那么这样的算法就只能是一个理论的算法.应用示例例1 已知一个5次多项式为f(x)=5x5+2x4+3.5x3-2.6x2+1.7x-0.8, 用秦九韶算法求这个多项式当x=5时的值.解:根据秦九韶算法,把多项式改写成如下形式:f(x)=((5x+2)x+3.5)x-2.6)x+1.7)x-0.8,按照从内到外的顺序,依次计算一次多项式当x=5时的值:v0=5;v1=55+2=27;v2=275+3.5=138.5;v3=138.55-2.6=689.9;v4=689.95+1.7=3 451.2;v5=3 415.25-0.8=17 255.2;所以,当x=5时,多项式的值等于17 255.2.算法分析:观察上述秦九韶算法中的n个一次式,可见vk的计算要用到vk-1的值,若令v0=an,我们可以得到下面的公式:这是一个在秦九韶算法中反复执行的步骤,因此可用循环结构来实现.算法步骤如下:第一步,输入多项式次数n、最高次的系数an和x的值.第二步,将v的值初始化为an,将i的值初始化为n-1.第三步,输入i次项的系数ai.第四步,v=vx+ai,i=i-1.第五步,判断i是否大于或等于0.若是,则返回第三步;否则,输出多项式的值v.程序框图如下图:程序:INPUT “n=”;nINPUT “an=”;aINPUT “x=”;xv=ai=n-1WHILE i=0 PRINT “i=”;i INPUT “ai=”;a v=v*x+a i=i-1WENDPRINT vEND点评:本题是古老算法与现代计算机语言的完美结合,详尽介绍了思想方法、算法步骤、程序框图和算法语句,是一个典型的算法案例.变式训练 请以5次多项式函数为例说明秦九韶算法,并画出程序框图.解:设f(x)=a5x5+a4x4+a3x3+a2x2+a1x+a0首先,让我们以5次多项式一步步地进行改写:f(x)=(a5x4+a4x3+a3x2+a2x+a1)x+a0=(a5x3+a4x2+ a3x+a2)x+a1)x+a0=(a5x2+a4x+ a3)x+a2)x+a1)x+a0=(a5x+a4)x+ a3)x+a2)x+a1)x+a0.上面的分层计算,只用了小括号,计算时,首先计算最内层的括号,然后由里向外逐层计算,直到最外层的括号,然后加上常数项即可.程序框图如下图:例2 已知n次多项式Pn(x)=a0xn+a1xn-1+an-1x+an,如果在一种算法中,计算(k=2,3,4,n)的值需要k1次乘法,计算P3(x0)的值共需要9次运算(6次乘法,3次加法),那么计算P10(x0)的值共需要_次运算.下面给出一种减少运算次数的算法:P0(x)=a0,Pk+1(x)=xPk(x)+ak+1(k0,1,2,n1)利用该算法,计算P3(x0)的值共需要6次运算,计算P10(x0)的值共需要_次运算.答案:65 20点评:秦九韶算法适用一般的多项式f(x)=anxn+an-1xn-1+a1x+a0的求值问题.直接法乘法运算的次数最多可到达,加法最多n次.秦九韶算法通过转化把乘法运算的次数减少到最多n次,加法最多n次.例3 已知多项式函数f(x)=2x55x44x3+3x26x+7,求当x=5时的函数的值.解析:把多项式变形为:f(x)=2x55x44x3+3x26x+7=(2x5)x4)x+3)x6)x+7.计算的过程可以列表表示为:最后的系数2 677即为所求的值.算法过程:v0=2;v1=255=5;v2=554=21;v3=215+3=108;v4=10856=534;v5=5345+7=2 677.点评:如果多项式函数中有缺项的话,要以系数为0的项补齐后再计算.知能训练当x=2时,用秦九韶算法求多项式f(x)=3x5+8x4-3x3+5x2+12x-6的值解法一:根据秦九韶算法,把多项式改写成如下形式:f(x)=(3x+8)x-3)x+5)x+12)x-6.按照从内到外的顺序,依次计算一次多项式当x=2时的值.v0=3;v1=v02+8=32+8=14;v2=v12-3=142-3=25;v3=v22+5=252+5=55;v4=v32+12=552+12=122;v5=v42-6=1222-6=238.当x=2时,多项式的值为238.解法二:f(x)=(3x+8)x-3)x+5)x+12)x-6,则f(2)=(32+8)23)2+5)2+12)26238拓展提升 用秦九韶算法求多项式f(x)=7x7+6x6+5x5+4x4+3x3+2x2+x当x=3时的值.解:f(x)=(7x+6)+5)x+4)x+3)x+2)x+1)xv0=7;v1=73+6=27;v2=273+5=86;v3=863+4=262;v4=2623+3=789;v5=7893+2=2 369;v6=2 3693+1=7 108;v7=7 1083+0=21 324.f(3)=21 324.课堂小结1.秦九韶算法的方法和步骤.2.秦九韶算法的计算机程序框图.作业已知函数f(x)=x32x25x+8,求f(9)的值.解:f(x)=x32x25x+8=(x22x5)x+8=(x2)x5)x+8 f(9)=(92)95)9+8=530.设计感想 古老的算法散发浓郁的现代气息,这是一节充满智慧的课.本节主要介绍了秦九韶算法. 通过对秦九韶算法的学习,对算法本身有哪些进一步的认识? 教师引导学生思考、讨论、概括,小结时要关注如下几点:(1)算法具有通用的特点,可以解决一类问题;(2)解决同一类问题,可以有不同的算法,但计算的效率是不同的,应该选择高效的算法;(3)算法的种类虽多,但三种逻辑结构可以有效地表达各种算法等等.第3课时 案例3 进位制导入新课情境导入 在日常生活中,我们最熟悉、最常用的是十进制,据说这与古人曾以手指计数有关,爱好天文学的古人也曾经采用七进制、十二进制、六十进制,至今我们仍然使用一周七天、一年十二个月、一小时六十分的历法.今天我们来学习一下进位制.推进新课新知探究提出问题(1)你都了解哪些进位制?(2)举出常见的进位制.(3)思考非十进制数转换为十进制数的转化方法.(4)思考十进制数转换成非十进制数及非十进制之间的转换方法.活动:先让学生思考或讨论后再回答,经教师提示、点拨,对回答正确的学生及时表扬,对回答不准确的学生提示引导考虑问题的思路讨论结果:(1)进位制是人们为了计数和运算方便而约定的计数系统,约定满二进一,就是二进制;满十进一,就是十进制;满十二进一,就是十二进制;满六十进一,就是六十进制等等.也就是说:“满几进一”就是几进制,几进制的基数(都是大于1的整数)就是几.(2)在日常生活中,我们最熟悉、最常用的是十进制,据说这与古人曾以手指计数有关,爱好天文学的古人也曾经采用七进制、十二进制、六十进制,至今我们仍然使用一周七天、一年十二个月、一小时六十分的历法.(3)十进制使用09十个数字.计数时,几个数字排成一行,从右起,第一位是个位,个位上的数字是几,就表示几个一;第二位是十位,十位上的数字是几,就表示几个十;接着依次是百位、千位、万位例如:十进制数3 721中的3表示3个千,7表示7个百,2表示2个十,1表示1个一.于是,我们得到下面的式子:3 721=3103+7102+2101+1100.与十进制类似,其他的进位制也可以按照位置原则计数.由于每一种进位制的基数不同,所用的数字个数也不同.如二进制用0和1两个数字,七进制用06七个数字.一般地,若k是一个大于1的整数,那么以k为基数的k进制数可以表示为一串数字连写在一起的形式 anan-1a1a0(k)(0ank,0an-1,a1,a0k).其他进位制的数也可以表示成不同位上数字与基数的幂的乘积之和的形式,如110 011(2)=125+124+023+022+121+120, 7 342(8)=783+382+481+280.非十进制数转换为十进制数比较简单,只要计算下面的式子值即可:anan-1a1a0(k)=ankn+an-1kn-1+a1k+a0.第一步:从左到右依次取出k进制数anan-1a1a0(k)各位上的数字,乘以相应的k的幂,k的幂从n开始取值,每次递减1,递减到0,即ankn,an-1kn-1,a1k,a0k0;第二步:把所得到的乘积加起来,所得的结果就是相应的十进制数.(4)关于进位制的转换,教科书上以十进制和二进制之间的转换为例讲解,并推广到十进制和其他进制之间的转换.这样做的原因是,计算机是以二进制的形式进行存储和计算数据的,而一般我们传输给计算机的数据是十进制数据,因此计算机必须先将十进制数转换为二进制数,再处理,显然运算后首次得到的结果为二进制数,同时计算机又把运算结果由二进制数转换成十进制数输出.1十进制数转换成非十进制数把十进制数转换为二进制数,教科书上提供了“除2取余法”,我们可以类比得到十进制数转换成k进制数的算法“除k取余法”.2非十进制之间的转换一个自然的想法是利用十进制作为桥梁.教科书上提供了一个二进制数据与16进制数据之间的互化的方法,也就是先由二进制数转化为十进制数,再由十进制数转化成为16进制数.应用示例思路1例1 把二进制数110 011(2)化为十进制数.解:110 011(2)=125+124+023+022+121+120=132+116+12+1=51.点评:先把二进制数写成不同位上数字与2的幂的乘积之和的形式,再按照十进制的运算规则计算出结果.变式训练设计一个算法,把k进制数a(共有n位)化为十进制数b.算法分析:从例1的计算过程可以看出,计算k进制数a的右数第i位数字ai与ki-1的乘积aiki-1,再将其累加,这是一个重复操作的步骤.所以,可以用循环结构来构造算法. 算法步骤如下:第一步,输入a,k和n的值.第二步,将b的值初始化为0,i的值初始化为1.第三步,b=b+aiki-1,i=i+1.第四步,判断in是否成立.若是,则执行第五步;否则,返回第三步.第五步,输出b的值.程序框图如下图:程序:INPUT “a,k,n=”;a,k,nb=0i=1t=a MOD 10DO b=b+t*k(i-1) a=a10 t=a MOD 10 i=i+1LOOP UNTIL inPRINT bEND例2 把89化为二进制数.解:根据二进制数“满二进一”的原则,可以用2连续去除89或所得商,然后取余数.具体计算方法如下:因为89=244+1,44=222+0,22=211+0,11=25+1,5=22+1,2=21+0,1=20+1,所以89=2(2(2(2(22+1)+1)+0)+0)+1=2(2(2(2(22+1)+1)+0)+0)+1=126+025+124+123+022+021+120=1 011 001(2).这种算法叫做除2取余法,还可以用下面的除法算式表示:把上式中各步所得的余数从下到上排列,得到89=1 011 001(2).上述方法也可以推广为把十进制数化为k进制数的算法,称为除k取余法.变式训练 设计一个程序,实现“除k取余法”.算法分析:从例2的计算过程可以看出如下的规律: 若十制数a除以k所得商是q0,余数是r0,即a=kq0+r0,则r0是a的k进制数的右数第1位数. 若q0除以k所得的商是q1,余数是r1,即q0=kq1+r1,则r1是a的k进制数的左数第2位数. 若qn-1除以k所得的商是0,余数是rn,即qn-1=rn,则rn是a的k进制数的左数第1位数. 这样,我们可以得到算法步骤如下: 第一步,给定十进制正整数a和转化后的数的基数k. 第二步,求出a除以k所得的商q,余数r. 第三步,把得到的余数依次从右到左排列. 第四步,若q0,则a=q,返回第二步;否则,输出全部余数r排列得到的k进制数. 程序框图如下图:程序:INPUT “a,k=”;a,kb=0i=0DO q=ak r=a MOD k b=b+r*10i i=i+1 a=qLOOP UNTIL q=0PRINT bEND思路2例1 将8进制数314 706(8)化为十进制数,并编写出一个实现算法的程序.解:314 706(8)=385+184+483+782+081+680=104 902.所以,化为十进制数是104 902.点评:利用把k进制数转化为十进制数的一般方法就可以把8进制数314 706(8)化为十进制数.例2 把十进制数89化为三进制数,并写出程序语句.解:具体的计算方法如下:89=329+2,29=39+2,9=33+0,3=31+0,1=30+1,所以:89(10)=10 022(3).点评:根据三进制数满三进一的原则,可以用3连续去除89及其所得的商,然后按倒序的顺序取出余数组成数据即可.知能训练 将十进制数34转化为二进制数分析:把一个十进制数转换成二进制数,用2反复去除这个十进制数,直到商为0,所得余数(从下往上读)就是所求解:即34(10)=100 010(2)拓展提升把1 234(5)分别转化为十进制数和八进制数解:1 234(5)=153+252+35+4194则1 234(5)=302(8)所以,1 234(5)=194302(8)点评:本题主要考查进位制以及不同进位制数的互化五进制数直接利用公式就可以转化为十进制数;五进制数和八进制数之间需要借助于十进制数来转化课堂小结(1)理解算法与进位制的关系.(2)熟练掌握各种进位制之间转化.作业 习题1.3A组3、4.设计感想 计算机是以二进制的形式进行存储和计算数据的,而一般我们传输给计算机的数据是十进制数据,因此计算机必须先将十进制数转换为二进制数,再处理,显然运算后首次得到的结果为二进制数,同时,计算机又把运算结果由二进制数转换成十进制数输出.因此学好进位制是非常必要的,另外,进位制也是高考的重点,本节设置了多种题型供学生训练,所以这节课非常实用.第2课时导入新课思路1 客观事物是相互联系的,过去研究的大多数是因果关系,但实际上更多存在的是一种非因果关系.比如说:某某同学的数学成绩与物理成绩,彼此是互相联系的,但不能认为数学是“因”,物理是“果”,或者反过来说.事实上数学和物理成绩都是“果”,而真正的“因”是学生的理科学习能力和努力程度.所以说,函数关系存在着一种确定性关系,但还存在着另一种非确定性关系相关关系.为表示这种相关关系,我们接着学习两个变量的线性相关回归直线及其方程.思路2 某小卖部为了了解热茶销售量与气温之间的关系,随机统计并制作了某6天卖出热茶的杯数与当天气温的对照表:气温/261813104-1杯数202434385064 如果某天的气温是-5 ,你能根据这些数据预测这天小卖部卖出热茶的杯数吗?为解决这个问题我们接着学习两个变量的线性相关回归直线及其方程.推进新课新知探究提出问题(1)作散点图的步骤和方法?(2)正、负相关的概念?(3)什么是线性相关?(4)看人体的脂肪百分比和年龄的散点图,当人的年龄增加时,体内脂肪含量到底是以什么方式增加的呢?(5)什么叫做回归直线?(6)如何求回归直线的方程?什么是最小二乘法?它有什么样的思想?(7)利用计算机如何求回归直线的方程?(8)利用计算器如何求回归直线的方程?活动:学生回顾,再思考或讨论,教师及时提示指导.讨论结果:(1)建立相应的平面直角坐标系,将各数据在平面直角坐标中的对应点画出来,得到表示两个变量的一组数据的图形,这样的图形叫做散点图.(a.如果所有的样本点都落在某一函数曲线上,就用该函数来描述变量之间的关系,即变量之间具有函数关系b.如果所有的样本点都落在某一函数曲线附近,变量之间就有相关关系.c.如果所有的样本点都落在某一直线附近,变量之间就有线性相关关系)(2)如果散点图中的点散布在从左下角到右上角的区域内,称为正相关.如果散点图中的点散布在从左上角到右下角的区域内,称为负相关.(3)如果所有的样本点都落在某一直线附近,变量之间就有线性相关的关系.(4)大体上来看,随着年龄的增加,人体中脂肪的百分比也在增加,呈正相关的趋势,我们可以从散点图上来进一步分析.(5)如下图: 从散点图上可以看出,这些点大致分布在通过散点图中心的一条直线附近.如果散点图中点的分布从整体上看大致在一条直线附近,我们就称这两个变量之间具有线性相关关系,这条直线叫做回归直线(regression line).如果能够求出这条回归直线的方程(简称回归方程),那么我们就可以比较清楚地了解年龄与体内脂肪含量的相关性.就像平均数可以作为一个变量的数据的代表一样,这条直线可以作为两个变量具有线性相关关系的代表.(6)从散点图上可以发现,人体的脂肪百分比和年龄的散点图,大致分布在通过散点图中心的一条直线. 那么,我们应当如何具体求出这个回归方程呢? 有的同学可能会想,我可以采用测量的方法,先画出一条直线,测量出各点与它的距离,然后移动直线,到达一个使距离的和最小的位置,测量出此时的斜率和截距,就可得到回归方程了.但是,这样做可靠吗? 有的同学可能还会想,在图中选择这样的两点画直线,使得直线两侧的点的个数基本相同.同样地,这样做能保证各点与此直线在整体上是最接近的吗? 还有的同学会想,在散点图中多取几组点,确定出几条直线的方程,再分别求出各条直线的斜率、截距的平均数,将这两个平均数当成回归方程的斜率和截距. 同学们不妨去实践一下,看看这些方法是不是真的可行?(学生讨论:1.选择能反映直线变化的两个点.2.在图中放上一根细绳,使得上面和下面点的个数相同或基本相同.3.多取几组点对,确定几条直线方程.再分别算出各个直线方程斜率、截距的算术平均值,作为所求直线的斜率、截距.)教师:分别分析各方法的可靠性.如下图: 上面这些方法虽然有一定的道理,但总让人感到可靠性不强. 实际上,求回归方程的关键是如何用数学的方法来刻画“从整体上看,各点与此直线的距离最小”.人们经过长期的实践与研究,已经得出了计算回归方程的斜率与截距的一般公式其中,b是回归方程的斜率,a是截距.推导公式的计算比较复杂,这里不作推导.但是,我们可以解释一下得出它的原理.假设我们已经得到两个具有线性相关关系的变量的一组数据(x1,y1),(x2,y2),(xn,yn),且所求回归方程是=bx+a,其中a、b是待定参数.当变量x取xi(i=1,2,n)时可以得到=bxi+a(i=1,2,n),它与实际收集到的yi之间的偏差是yi-=yi-(bxi+a)(i=1,2,n).这样,用这n个偏差的和来刻画“各点与此直线的整体偏差”是比较合适的.由于(yi-)可正可负,为了避免相互抵消,可以考虑用来代替,但由于它含有绝对值,运算不太方便,所以改用Q=(y1-bx1-a)2+(y2-bx2-a)2+(yn-bxn-a)2 来刻画n个点与回归直线在整体上的偏差.这样,问题就归结为:当a,b取什么值时Q最小,即总体偏差最小.经过数学上求最小值的运算,a,b的值由公式给出.通过求式的最小值而得出回归直线的方法,即求回归直线,使得样本数据的点到它的距离的平方和最小,这一方法叫做最小二乘法(method of least square).(7)利用计算机求回归直线的方程. 根据最小二乘法的思想和公式,利用计算器或计算机,可以方便地求出回归方程. 以Excel软件为例,用散点图来建立表示人体的脂肪含量与年龄的相关关系的线性回归方程,具体步骤如下:在Excel中选定表示人体的脂肪含量与年龄的相关关系的散点图(如下图),在菜单中选定“图表”中的“添加趋势线”选项,弹出“添加趋势线”对话框.单击“类型”标签,选定“趋势预测/回归分析类型”中的“线性”选项,单击“确定”按钮,得到回归直线.双击回归直线,弹出“趋势线格式”对话框.单击“选项”标签,选定“显示公式”,最后单击“确定”按钮,得到回归直线的回归方程=0.577x-0.448.(8)利用计算器求回归直线的方程. 用计算器求这个回归方程的过程如下:所以回归方程为=0.577x-0.448.正像本节开头所说的,我们从人体脂肪含量与年龄这两个变量的一组随机样本数据中,找到了它们之间关系的一个规律,这个规律是由回归直线
收藏
- 资源描述:
-
-!
教学过程
第1课时 案例1 辗转相除法与更相减损术
导入新课
思路1(情境导入)
大家喜欢打乒乓球吧,由于东、西方文化及身体条件的不同,西方人喜欢横握拍打球,东方人喜欢直握拍打球,对于同一个问题,东、西方人处理问题方式是有所不同的.在小学,我们学过求两个正整数的最大公约数的方法:先用两个数公有的质因数连续去除,一直除到所得的商是互质数为止,然后把所有的除数连乘起来. 当两个数公有的质因数较大时(如8 251与6 105),使用上述方法求最大公约数就比较困难.下面我们介绍两种不同的算法——辗转相除法与更相减损术,由此可以体会东、西方文化的差异.
思路2(直接导入)
前面我们学习了算法步骤、程序框图和算法语句.今天我们将通过辗转相除法与更相减损术来进一步体会算法的思想.
推进新课
新知探究
提出问题
(1)怎样用短除法求最大公约数?
(2)怎样用穷举法(也叫枚举法)求最大公约数?
(3)怎样用辗转相除法求最大公约数?
(4)怎样用更相减损术求最大公约数?
讨论结果:
(1)短除法
求两个正整数的最大公约数的步骤:先用两个数公有的质因数连续去除,一直除到所得的商是两个互质数为止,然后把所有的除数连乘起来.
(2)穷举法(也叫枚举法)
穷举法求两个正整数的最大公约数的解题步骤:从两个数中较小数开始由大到小列举,直到找到公约数立即中断列举,得到的公约数便是最大公约数.
(3)辗转相除法
辗转相除法求两个数的最大公约数,其算法步骤可以描述如下:
第一步,给定两个正整数m,n.
第二步,求余数r:计算m除以n,将所得余数存放到变量r中.
第三步,更新被除数和余数:m=n,n=r.
第四步,判断余数r是否为0.若余数为0,则输出结果;否则转向第二步继续循环执行.
如此循环,直到得到结果为止. 这种算法是由欧几里得在公元前300年左右首先提出的,因而又叫欧几里得算法.
(4)更相减损术
我国早期也有解决求最大公约数问题的算法,就是更相减损术. 《九章算术》是中国古代的数学专著,其中的“更相减损术”也可以用来求两个数的最大公约数,即“可半者半之,不可半者,副置分母、子之数,以少减多,更相减损,求其等也.以等数约之.”翻译为现代语言如下:
第一步,任意给定两个正整数,判断它们是否都是偶数,若是,用2约简;若不是,执行第二步.
第二步,以较大的数减去较小的数,接着把所得的差与较小的数比较,并以大数减小数,继续这个操作,直到所得的数相等为止,则这个数(等数)或这个数与约简的数的乘积就是所求的最大公约数.
应用示例
例1 用辗转相除法求8 251与6 105的最大公约数,写出算法分析,画出程序框图,写出算法程序.
解:用两数中较大的数除以较小的数,求得商和余数:8 251=6 1051+2 146.
由此可得,6 105与2 146的公约数也是8 251与6 105的公约数,反过来,8 251与6 105的公约数也是6 105与2 146的公约数,所以它们的最大公约数相等.
对6 105与2 146重复上述步骤:6 105=2 1462+1 813.
同理,2 146与1 813的最大公约数也是6 105与2 146的最大公约数.继续重复上述步骤:
2 146=1 8131+333,
1 813=3335+148,
333=1482+37,
148=374.
最后的除数37是148和37的最大公约数,也就是8 251与6 105的最大公约数.
这就是辗转相除法.由除法的性质可以知道,对于任意两个正整数,上述除法步骤总可以在有限步之后完成,从而总可以用辗转相除法求出两个正整数的最大公约数.
算法分析:从上面的例子可以看出,辗转相除法中包含重复操作的步骤,因此可以用循环结构来构造算法.
算法步骤如下:
第一步,给定两个正整数m,n.
第二步,计算m除以n所得的余数为r.
第三步,m=n,n=r.
第四步,若r=0,则m,n的最大公约数等于m;否则,返回第二步.
程序框图如下图:
程序:
INPUT m,n
DO
r=m MOD n
m=n
n=r
LOOP UNTIL r=0
PRINT m
END
点评:从教学实践看,有些学生不能理解算法中的转化过程,例如:求8 251与6 105的最大公约数,为什么可以转化为求6 105与2 146的公约数.因为8 251=6 1051+2 146,
可以化为8 251-6 1051=2 164,所以公约数能够整除等式两边的数,即6 105与2 146的公约数也是8 251与6 105的公约数.
变式训练
你能用当型循环结构构造算法,求两个正整数的最大公约数吗?试画出程序框图和程序.
解:当型循环结构的程序框图如下图:
程序:
INPUT m,n
r=1
WHILE r>0
r=m MOD n
m=n
n=r
WEND
PRINT m
END
例2 用更相减损术求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的最大公约数等于7.
点评:更相减损术与辗转相除法的比较:尽管两种算法分别来源于东、西方古代数学名著,但是二者的算理却是相似的,有异曲同工之妙.主要区别在于辗转相除法进行的是除法运算,即辗转相除;而更相减损术进行的是减法运算,即辗转相减,但是实质都是一个不断的递归过程.
变式训练
用辗转相除法或者更相减损术求三个数324,243,135的最大公约数.
解:324=2431+81,
243=813+0,
则324与243的最大公约数为81.
又135=811+54,81=541+27,
54=272+0,
则 81 与 135的最大公约数为27.
所以,三个数324、243、135的最大公约数为27.
另法:324-243=81,243-81=162,162-81=81,则324与243的最大公约数为81.
135-81=54,81-54=27,54-27=27,则81与135的最大公约数为27.
所以,三个数324、243.135的最大公约数为27.
例3 (1)用辗转相除法求123和48的最大公约数.
(2)用更相减损术求80和36的最大公约数.
解:(1)辗转相除法求最大公约数的过程如下:
123=248+27,
48=127+21,
27=121+6,
21=36+3,
6=23+0,
最后6能被3整除,得123和48的最大公约数为3.
(2)我们将80作为大数,36作为小数,因为80和36都是偶数,要除公因数2.
802=40,362=18.
40和18都是偶数,要除公因数2.
402=20,182=9.
下面来求20与9的最大公约数,
20-9=11,
11-9=2,
9-2=7,
7-2=5,
5-2=3,
3-2=1,
2-1=1,
可得80和36的最大公约数为221=4.
点评:对比两种方法控制好算法的结束,辗转相除法是到达余数为0,更相减损术是到达减数和差相等.
变式训练
分别用辗转相除法和更相减损术求1 734,816的最大公约数.
解:辗转相除法:
1 734=8162+102,816=1028(余0),
∴1 734与816的最大公约数是102.
更相减损术:因为两数皆为偶数,首先除以2得到867,408,再求867与408的最大公约数.
867-408=459,
459-408=51,
408-51=357,
357-51=306,
306-51=255,
255-51=204,
204-51=153,
153-51=102,
102-51=51.
∴1 734与816的最大公约数是512=102.
利用更相减损术可另解:
1 734-816=918,
918-816=102,
816-102=714,
714-102=612,
612-102=510,
510-102=408,
408-102=306,
306-102=204,
204-102=102.
∴1 734与816的最大公约数是102.
知能训练
求319,377,116的最大公约数.
解:377=3191+58,
319=585+29,
58=292.
∴377与319的最大公约数为29,再求29与116的最大公约数.
116=294.
∴29与116的最大公约数为29.
∴377,319,116的最大公约数为29.
拓展提升
试写出利用更相减损术求两个正整数的最大公约数的程序.
解:更相减损术程序:
INPUT “m,n=”;m,n
WHILE m<>n
IF m>n THEN
m=m-n
ELSE
m=n-m
END IF
WEND
PRINT m
END
课堂小结
(1)用辗转相除法求最大公约数.
(2)用更相减损术求最大公约数.
思想方法:递归思想.
作业
分别用辗转相除法和更相减损术求261,319的最大公约数.
分析:本题主要考查辗转相除法和更相减损术及其应用.使用辗转相除法可依据m=nq+r,反复执行,直到r=0为止;用更相减损术就是根据m-n=r,反复执行,直到n=r为止.
解:辗转相除法:
319=2611+58,
261=584+29,
58=292.
∴319与261的最大公约数是29.
更相减损术:
319-261=58,
261-58=203,
203-58=145,
145-58=87,
87-58=29,
58-29=29,
∴319与261的最大公约数是29.
设计感想
数学不仅是一门科学,也是一种文化,本节的引入从东、西方文化的不同开始,逐步向学生渗透数学文化.从知识方面主要学习用两种方法求两个正整数的最大公约数,从思想方法方面,主要学习递归思想.本节设置精彩例题,不仅让学生学到知识,而且让学生进一步体会算法的思想,培养学生的爱国主义情操.
第2课时 案例2 秦九韶算法
导入新课
思路1(情境导入)
大家都喜欢吃苹果吧,我们吃苹果都是从外到里一口一口的吃,而虫子却是先钻到苹果里面从里到外一口一口的吃,由此看来处理同一个问题的方法多种多样.怎样求多项式f(x)=x5+x4+x3+x2+x+1当x=5时的值呢?方法也是多种多样的,今天我们开始学习秦九韶算法.
思路2(直接导入)
前面我们学习了辗转相除法与更相减损术, 今天我们开始学习秦九韶算法.
推进新课
新知探究
提出问题
(1)求多项式f(x)=x5+x4+x3+x2+x+1当x=5时的值有哪些方法?比较它们的特点.
(2)什么是秦九韶算法?
(3)怎样评价一个算法的好坏?
讨论结果:
(1)怎样求多项式f(x)=x5+x4+x3+x2+x+1当x=5时的值呢?
一个自然的做法就是把5代入多项式f(x),计算各项的值,然后把它们加起来,这时,我们一共做了1+2+3+4=10次乘法运算,5次加法运算.
另一种做法是先计算x2的值,然后依次计算x2x,(x2x)x,((x2x)x)x的值,这样每次都可以利用上一次计算的结果,这时,我们一共做了4次乘法运算,5次加法运算.
第二种做法与第一种做法相比,乘法的运算次数减少了,因而能够提高运算效率,对于计算机来说,做一次乘法运算所用的时间比做一次加法运算要长得多,所以采用第二种做法,计算机能更快地得到结果.
(2)上面问题有没有更有效的算法呢?我国南宋时期的数学家秦九韶(约1202~1261)在他的著作《数书九章》中提出了下面的算法:
把一个n次多项式f(x)=anxn+an-1xn-1+…+a1x+a0改写成如下形式:
f(x)=anxn+an-1xn-1+…+a1x+a0
=(anxn-1+an-1xn-2+…+a1)x+ a0
=((anxn-2+an-1xn-3+…+a2)x+a1)x+a0
=…
=(…((anx+an-1)x+an-2)x+…+a1)x+a0.
求多项式的值时,首先计算最内层括号内一次多项式的值,即
v1=anx+an-1,
然后由内向外逐层计算一次多项式的值,即
v2=v1x+an-2,
v3=v2x+an-3,
…
vn=vn-1x+a0,
这样,求n次多项式f(x)的值就转化为求n个一次多项式的值.
上述方法称为秦九韶算法.直到今天,这种算法仍是多项式求值比较先进的算法.
(3)计算机的一个很重要的特点就是运算速度快,但即便如此,算法好坏的一个重要标志仍然是运算的次数.如果一个算法从理论上需要超出计算机允许范围内的运算次数,那么这样的算法就只能是一个理论的算法.
应用示例
例1 已知一个5次多项式为f(x)=5x5+2x4+3.5x3-2.6x2+1.7x-0.8,
用秦九韶算法求这个多项式当x=5时的值.
解:根据秦九韶算法,把多项式改写成如下形式:
f(x)=((((5x+2)x+3.5)x-2.6)x+1.7)x-0.8,
按照从内到外的顺序,依次计算一次多项式当x=5时的值:
v0=5;
v1=55+2=27;
v2=275+3.5=138.5;
v3=138.55-2.6=689.9;
v4=689.95+1.7=3 451.2;
v5=3 415.25-0.8=17 255.2;
所以,当x=5时,多项式的值等于17 255.2.
算法分析:观察上述秦九韶算法中的n个一次式,可见vk的计算要用到vk-1的值,若令v0=an,我们可以得到下面的公式:
这是一个在秦九韶算法中反复执行的步骤,因此可用循环结构来实现.
算法步骤如下:
第一步,输入多项式次数n、最高次的系数an和x的值.
第二步,将v的值初始化为an,将i的值初始化为n-1.
第三步,输入i次项的系数ai.
第四步,v=vx+ai,i=i-1.
第五步,判断i是否大于或等于0.若是,则返回第三步;否则,输出多项式的值v.
程序框图如下图:
程序:
INPUT “n=”;n
INPUT “an=”;a
INPUT “x=”;x
v=a
i=n-1
WHILE i>=0
PRINT “i=”;i
INPUT “ai=”;a
v=v*x+a
i=i-1
WEND
PRINT v
END
点评:本题是古老算法与现代计算机语言的完美结合,详尽介绍了思想方法、算法步骤、程序框图和算法语句,是一个典型的算法案例.
变式训练
请以5次多项式函数为例说明秦九韶算法,并画出程序框图.
解:设f(x)=a5x5+a4x4+a3x3+a2x2+a1x+a0
首先,让我们以5次多项式一步步地进行改写:
f(x)=(a5x4+a4x3+a3x2+a2x+a1)x+a0
=((a5x3+a4x2+ a3x+a2)x+a1)x+a0
=(((a5x2+a4x+ a3)x+a2)x+a1)x+a0
=((((a5x+a4)x+ a3)x+a2)x+a1)x+a0.
上面的分层计算,只用了小括号,计算时,首先计算最内层的括号,然后由里向外逐层计算,直到最外层的括号,然后加上常数项即可.
程序框图如下图:
例2 已知n次多项式Pn(x)=a0xn+a1xn-1+…+an-1x+an,如果在一种算法中,计算(k=2,3,4,…,n)的值需要k-1次乘法,计算P3(x0)的值共需要9次运算(6次乘法,3次加法),那么计算P10(x0)的值共需要__________次运算.下面给出一种减少运算次数的算法:P0(x)=a0,Pk+1(x)=xPk(x)+ak+1(k=0,1,2,…,n-1).利用该算法,计算P3(x0)的值共需要6次运算,计算P10(x0)的值共需要___________次运算.
答案:65 20
点评:秦九韶算法适用一般的多项式f(x)=anxn+an-1xn-1+…+a1x+a0的求值问题.直接法乘法运算的次数最多可到达,加法最多n次.秦九韶算法通过转化把乘法运算的次数减少到最多n次,加法最多n次.
例3 已知多项式函数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.
计算的过程可以列表表示为:
最后的系数2 677即为所求的值.
算法过程:
v0=2;
v1=25-5=5;
v2=55-4=21;
v3=215+3=108;
v4=1085-6=534;
v5=5345+7=2 677.
点评:如果多项式函数中有缺项的话,要以系数为0的项补齐后再计算.
知能训练
当x=2时,用秦九韶算法求多项式f(x)=3x5+8x4-3x3+5x2+12x-6的值.
解法一:根据秦九韶算法,把多项式改写成如下形式:
f(x)=((((3x+8)x-3)x+5)x+12)x-6.
按照从内到外的顺序,依次计算一次多项式当x=2时的值.
v0=3;
v1=v02+8=32+8=14;
v2=v12-3=142-3=25;
v3=v22+5=252+5=55;
v4=v32+12=552+12=122;
v5=v42-6=1222-6=238.
∴当x=2时,多项式的值为238.
解法二:f(x)=((((3x+8)x-3)x+5)x+12)x-6,
则f(2)=((((32+8)2-3)2+5)2+12)2-6=238.
拓展提升
用秦九韶算法求多项式f(x)=7x7+6x6+5x5+4x4+3x3+2x2+x当x=3时的值.
解:f(x)=((((((7x+6)+5)x+4)x+3)x+2)x+1)x
v0=7;
v1=73+6=27;
v2=273+5=86;
v3=863+4=262;
v4=2623+3=789;
v5=7893+2=2 369;
v6=2 3693+1=7 108;
v7=7 1083+0=21 324.
∴f(3)=21 324.
课堂小结
1.秦九韶算法的方法和步骤.
2.秦九韶算法的计算机程序框图.
作业
已知函数f(x)=x3-2x2-5x+8,求f(9)的值.
解:f(x)=x3-2x2-5x+8=(x2-2x-5)x+8=((x-2)x-5)x+8
∴f(9)=((9-2)9-5)9+8=530.
设计感想
古老的算法散发浓郁的现代气息,这是一节充满智慧的课.本节主要介绍了秦九韶算法.
通过对秦九韶算法的学习,对算法本身有哪些进一步的认识?
教师引导学生思考、讨论、概括,小结时要关注如下几点:(1)算法具有通用的特点,可以解决一类问题;(2)解决同一类问题,可以有不同的算法,但计算的效率是不同的,应该选择高效的算法;(3)算法的种类虽多,但三种逻辑结构可以有效地表达各种算法等等.
第3课时 案例3 进位制
导入新课
情境导入
在日常生活中,我们最熟悉、最常用的是十进制,据说这与古人曾以手指计数有关,爱好天文学的古人也曾经采用七进制、十二进制、六十进制,至今我们仍然使用一周七天、一年十二个月、一小时六十分的历法.今天我们来学习一下进位制.
推进新课
新知探究
提出问题
(1)你都了解哪些进位制?
(2)举出常见的进位制.
(3)思考非十进制数转换为十进制数的转化方法.
(4)思考十进制数转换成非十进制数及非十进制之间的转换方法.
活动:先让学生思考或讨论后再回答,经教师提示、点拨,对回答正确的学生及时表扬,对回答不准确的学生提示引导考虑问题的思路.
讨论结果:
(1)进位制是人们为了计数和运算方便而约定的计数系统,约定满二进一,就是二进制;满十进一,就是十进制;满十二进一,就是十二进制;满六十进一,就是六十进制等等.也就是说:“满几进一”就是几进制,几进制的基数(都是大于1的整数)就是几.
(2)在日常生活中,我们最熟悉、最常用的是十进制,据说这与古人曾以手指计数有关,爱好天文学的古人也曾经采用七进制、十二进制、六十进制,至今我们仍然使用一周七天、一年十二个月、一小时六十分的历法.
(3)十进制使用0~9十个数字.计数时,几个数字排成一行,从右起,第一位是个位,个位上的数字是几,就表示几个一;第二位是十位,十位上的数字是几,就表示几个十;接着依次是百位、千位、万位……
例如:十进制数3 721中的3表示3个千,7表示7个百,2表示2个十,1表示1个一.于是,我们得到下面的式子:
3 721=3103+7102+2101+1100.
与十进制类似,其他的进位制也可以按照位置原则计数.由于每一种进位制的基数不同,所用的数字个数也不同.如二进制用0和1两个数字,七进制用0~6七个数字.
一般地,若k是一个大于1的整数,那么以k为基数的k进制数可以表示为一串数字连写在一起的形式
anan-1…a1a0(k)(0<an<k,0≤an-1,…,a1,a0<k).
其他进位制的数也可以表示成不同位上数字与基数的幂的乘积之和的形式,如
110 011(2)=125+124+023+022+121+120,
7 342(8)=783+382+481+280.
非十进制数转换为十进制数比较简单,只要计算下面的式子值即可:
anan-1…a1a0(k)=ankn+an-1kn-1+…+a1k+a0.
第一步:从左到右依次取出k进制数anan-1…a1a0(k)各位上的数字,乘以相应的k的幂,k的幂从n开始取值,每次递减1,递减到0,即ankn,an-1kn-1,…,a1k,a0k0;
第二步:把所得到的乘积加起来,所得的结果就是相应的十进制数.
(4)关于进位制的转换,教科书上以十进制和二进制之间的转换为例讲解,并推广到十进制和其他进制之间的转换.这样做的原因是,计算机是以二进制的形式进行存储和计算数据的,而一般我们传输给计算机的数据是十进制数据,因此计算机必须先将十进制数转换为二进制数,再处理,显然运算后首次得到的结果为二进制数,同时计算机又把运算结果由二进制数转换成十进制数输出.
1十进制数转换成非十进制数
把十进制数转换为二进制数,教科书上提供了“除2取余法”,我们可以类比得到十进制数转换成k进制数的算法“除k取余法”.
2非十进制之间的转换
一个自然的想法是利用十进制作为桥梁.教科书上提供了一个二进制数据与16进制数据之间的互化的方法,也就是先由二进制数转化为十进制数,再由十进制数转化成为16进制数.
应用示例
思路1
例1 把二进制数110 011(2)化为十进制数.
解:110 011(2)=125+124+023+022+121+120=132+116+12+1=51.
点评:先把二进制数写成不同位上数字与2的幂的乘积之和的形式,再按照十进制的运算规则计算出结果.
变式训练
设计一个算法,把k进制数a(共有n位)化为十进制数b.
算法分析:从例1的计算过程可以看出,计算k进制数a的右数第i位数字ai与ki-1的乘积aiki-1,再将其累加,这是一个重复操作的步骤.所以,可以用循环结构来构造算法.
算法步骤如下:
第一步,输入a,k和n的值.
第二步,将b的值初始化为0,i的值初始化为1.
第三步,b=b+aiki-1,i=i+1.
第四步,判断i>n是否成立.若是,则执行第五步;否则,返回第三步.
第五步,输出b的值.
程序框图如下图:
程序:
INPUT “a,k,n=”;a,k,n
b=0
i=1
t=a MOD 10
DO
b=b+t*k^(i-1)
a=a\\10
t=a MOD 10
i=i+1
LOOP UNTIL i>n
PRINT b
END
例2 把89化为二进制数.
解:根据二进制数“满二进一”的原则,可以用2连续去除89或所得商,然后取余数.具体计算方法如下:
因为89=244+1,44=222+0,
22=211+0,
11=25+1,
5=22+1,
2=21+0,
1=20+1,
所以
89=2(2(2(2(22+1)+1)+0)+0)+1
=2(2(2(2(22+1)+1)+0)+0)+1
=…=126+025+124+123+022+021+120
=1 011 001(2).
这种算法叫做除2取余法,还可以用下面的除法算式表示:
把上式中各步所得的余数从下到上排列,得到89=1 011 001(2).
上述方法也可以推广为把十进制数化为k进制数的算法,称为除k取余法.
变式训练
设计一个程序,实现“除k取余法”.
算法分析:从例2的计算过程可以看出如下的规律:
若十制数a除以k所得商是q0,余数是r0,即a=kq0+r0,则r0是a的k进制数的右数第1位数.
若q0除以k所得的商是q1,余数是r1,即q0=kq1+r1,则r1是a的k进制数的左数第2位数.
……
若qn-1除以k所得的商是0,余数是rn,即qn-1=rn,则rn是a的k进制数的左数第1位数.
这样,我们可以得到算法步骤如下:
第一步,给定十进制正整数a和转化后的数的基数k.
第二步,求出a除以k所得的商q,余数r.
第三步,把得到的余数依次从右到左排列.
第四步,若q≠0,则a=q,返回第二步;否则,输出全部余数r排列得到的k进制数.
程序框图如下图:
程序:
INPUT “a,k=”;a,k
b=0
i=0
DO
q=a\\k
r=a MOD k
b=b+r*10^i
i=i+1
a=q
LOOP UNTIL q=0
PRINT b
END
思路2
例1 将8进制数314 706(8)化为十进制数,并编写出一个实现算法的程序.
解:314 706(8)=385+184+483+782+081+680=104 902.
所以,化为十进制数是104 902.
点评:利用把k进制数转化为十进制数的一般方法就可以把8进制数314 706(8)化为十进制数.
例2 把十进制数89化为三进制数,并写出程序语句.
解:具体的计算方法如下:
89=329+2,
29=39+2,
9=33+0,
3=31+0,
1=30+1,
所以:89(10)=10 022(3).
点评:根据三进制数满三进一的原则,可以用3连续去除89及其所得的商,然后按倒序的顺序取出余数组成数据即可.
知能训练
将十进制数34转化为二进制数.
分析:把一个十进制数转换成二进制数,用2反复去除这个十进制数,直到商为0,所得余数(从下往上读)就是所求.
解:
即34(10)=100 010(2)
拓展提升
把1 234(5)分别转化为十进制数和八进制数.
解:1 234(5)=153+252+35+4=194.
则1 234(5)=302(8)
所以,1 234(5)=194=302(8)
点评:本题主要考查进位制以及不同进位制数的互化.五进制数直接利用公式就可以转化为十进制数;五进制数和八进制数之间需要借助于十进制数来转化.
课堂小结
(1)理解算法与进位制的关系.
(2)熟练掌握各种进位制之间转化.
作业
习题1.3A组3、4.
设计感想
计算机是以二进制的形式进行存储和计算数据的,而一般我们传输给计算机的数据是十进制数据,因此计算机必须先将十进制数转换为二进制数,再处理,显然运算后首次得到的结果为二进制数,同时,计算机又把运算结果由二进制数转换成十进制数输出.因此学好进位制是非常必要的,另外,进位制也是高考的重点,本节设置了多种题型供学生训练,所以这节课非常实用.
第2课时
导入新课
思路1
客观事物是相互联系的,过去研究的大多数是因果关系,但实际上更多存在的是一种非因果关系.比如说:某某同学的数学成绩与物理成绩,彼此是互相联系的,但不能认为数学是“因”,物理是“果”,或者反过来说.事实上数学和物理成绩都是“果”,而真正的“因”是学生的理科学习能力和努力程度.所以说,函数关系存在着一种确定性关系,但还存在着另一种非确定性关系——相关关系.为表示这种相关关系,我们接着学习两个变量的线性相关——回归直线及其方程.
思路2
某小卖部为了了解热茶销售量与气温之间的关系,随机统计并制作了某6天卖出热茶的杯数与当天气温的对照表:
气温/℃
26
18
13
10
4
-1
杯数
20
24
34
38
50
64
如果某天的气温是-5 ℃,你能根据这些数据预测这天小卖部卖出热茶的杯数吗?为解决这个问题我们接着学习两个变量的线性相关——回归直线及其方程.
推进新课
新知探究
提出问题
(1)作散点图的步骤和方法?
(2)正、负相关的概念?
(3)什么是线性相关?
(4)看人体的脂肪百分比和年龄的散点图,当人的年龄增加时,体内脂肪含量到底是以什么方式增加的呢?
(5)什么叫做回归直线?
(6)如何求回归直线的方程?什么是最小二乘法?它有什么样的思想?
(7)利用计算机如何求回归直线的方程?
(8)利用计算器如何求回归直线的方程?
活动:学生回顾,再思考或讨论,教师及时提示指导.
讨论结果:(1)建立相应的平面直角坐标系,将各数据在平面直角坐标中的对应点画出来,得到表示两个变量的一组数据的图形,这样的图形叫做散点图.(a.如果所有的样本点都落在某一函数曲线上,就用该函数来描述变量之间的关系,即变量之间具有函数关系.b.如果所有的样本点都落在某一函数曲线附近,变量之间就有相关关系.c.如果所有的样本点都落在某一直线附近,变量之间就有线性相关关系)
(2)如果散点图中的点散布在从左下角到右上角的区域内,称为正相关.如果散点图中的点散布在从左上角到右下角的区域内,称为负相关.
(3)如果所有的样本点都落在某一直线附近,变量之间就有线性相关的关系.
(4)大体上来看,随着年龄的增加,人体中脂肪的百分比也在增加,呈正相关的趋势,我们可以从散点图上来进一步分析.
(5)如下图:
从散点图上可以看出,这些点大致分布在通过散点图中心的一条直线附近.如果散点图中点的分布从整体上看大致在一条直线附近,我们就称这两个变量之间具有线性相关关系,这条直线叫做回归直线(regression line).如果能够求出这条回归直线的方程(简称回归方程),那么我们就可以比较清楚地了解年龄与体内脂肪含量的相关性.就像平均数可以作为一个变量的数据的代表一样,这条直线可以作为两个变量具有线性相关关系的代表.
(6)从散点图上可以发现,人体的脂肪百分比和年龄的散点图,大致分布在通过散点图中心的一条直线.
那么,我们应当如何具体求出这个回归方程呢?
有的同学可能会想,我可以采用测量的方法,先画出一条直线,测量出各点与它的距离,然后移动直线,到达一个使距离的和最小的位置,测量出此时的斜率和截距,就可得到回归方程了.但是,这样做可靠吗?
有的同学可能还会想,在图中选择这样的两点画直线,使得直线两侧的点的个数基本相同.同样地,这样做能保证各点与此直线在整体上是最接近的吗?
还有的同学会想,在散点图中多取几组点,确定出几条直线的方程,再分别求出各条直线的斜率、截距的平均数,将这两个平均数当成回归方程的斜率和截距.
同学们不妨去实践一下,看看这些方法是不是真的可行?
(学生讨论:1.选择能反映直线变化的两个点.2.在图中放上一根细绳,使得上面和下面点的个数相同或基本相同.3.多取几组点对,确定几条直线方程.再分别算出各个直线方程斜率、截距的算术平均值,作为所求直线的斜率、截距.)教师:分别分析各方法的可靠性.如下图:
上面这些方法虽然有一定的道理,但总让人感到可靠性不强.
实际上,求回归方程的关键是如何用数学的方法来刻画“从整体上看,各点与此直线的距离最小”.人们经过长期的实践与研究,已经得出了计算回归方程的斜率与截距的一般公式
其中,b是回归方程的斜率,a是截距.
推导公式①的计算比较复杂,这里不作推导.但是,我们可以解释一下得出它的原理.
假设我们已经得到两个具有线性相关关系的变量的一组数据(x1,y1),(x2,y2),…,(xn,yn),
且所求回归方程是=bx+a,
其中a、b是待定参数.当变量x取xi(i=1,2,…,n)时可以得到=bxi+a(i=1,2,…,n),
它与实际收集到的yi之间的偏差是yi-=yi-(bxi+a)(i=1,2,…,n).
这样,用这n个偏差的和来刻画“各点与此直线的整体偏差”是比较合适的.由于(yi-)可正可负,为了避免相互抵消,可以考虑用来代替,但由于它含有绝对值,运算不太方便,所以改用Q=(y1-bx1-a)2+(y2-bx2-a)2+…+(yn-bxn-a)2 ②
来刻画n个点与回归直线在整体上的偏差.
这样,问题就归结为:当a,b取什么值时Q最小,即总体偏差最小.经过数学上求最小值的运算,a,b的值由公式①给出.
通过求②式的最小值而得出回归直线的方法,即求回归直线,使得样本数据的点到它的距离的平方和最小,这一方法叫做最小二乘法(method of least square).
(7)利用计算机求回归直线的方程.
根据最小二乘法的思想和公式①,利用计算器或计算机,可以方便地求出回归方程.
以Excel软件为例,用散点图来建立表示人体的脂肪含量与年龄的相关关系的线性回归方程,具体步骤如下:
①在Excel中选定表示人体的脂肪含量与年龄的相关关系的散点图(如下图),在菜单中选定“图表”中的“添加趋势线”选项,弹出“添加趋势线”对话框.
②单击“类型”标签,选定“趋势预测/回归分析类型”中的“线性”选项,单击“确定”按钮,得到回归直线.
③双击回归直线,弹出“趋势线格式”对话框.单击“选项”标签,选定“显示公式”,最后单击“确定”按钮,得到回归直线的回归方程=0.577x-0.448.
(8)利用计算器求回归直线的方程.
用计算器求这个回归方程的过程如下:
所以回归方程为=0.577x-0.448.
正像本节开头所说的,我们从人体脂肪含量与年龄这两个变量的一组随机样本数据中,找到了它们之间关系的一个规律,这个规律是由回归直线
展开阅读全文