2022年高中数学第一章教案肖海生 .pdf
学习必备欢迎下载111 算法的概念一、三维目标:1、 知识与技能:(1)了解算法的含义,体会算法的思想。(2)能够用自然语言叙述算法。(3)掌握正确的算法应满足的要求。 (4)会写出解线性方程(组)的算法。(5)会写出一个求有限整数序列中的最大值的算法。 (6)会应用Scilab求解方程组。2、 过程与方法:通过求解二元一次方程组,体会解方程的一般性步骤,从而得到一个解二元一次方程组的步骤,这些步骤就是算法,不同的问题有不同的算法。由于思考问题的角度不同,同一个问题也可能有多个算法,能模仿求解二元一次方程组的步骤,写出一个求有限整数序列中的最大值的算法。3、 情感态度与价值观:通过本节的学习,使我们对计算机的算法语言有一个基本的了解,明确算法的要求,认识到计算机是人类征服自然的一各有力工具,进一步提高探索、认识世界的能力。二、重点与难点:重点:算法的含义、解二元一次方程组和判断一个数为质数的算法设计。难点:把自然语言转化为算法语言。三、学法与教学用具:学法: 1、写出的算法,必须能解决一类问题( 如:判断一个整数n(n1) 是否为质数;求任意一个方程的近似解;) ,并且能够重复使用。2、要使算法尽量简单、步骤尽量少。3、要保证算法正确,且计算机能够执行,如:让计算机计算12345 是可以做到的,但让计算机去执行“倒一杯水”“替我理发”等则是做不到的。教学用具 :电脑,计算器,图形计算器四、教学设想:1、 创设情境:算法作为一个名词,在中学教科书中并没有出现过,我们在基础教育阶段还没有接触算法概念。但是我们却从小学就开始接触算法,熟悉许多问题的算法。如,做四则运算要先乘除后加减, 从里往外脱括弧,竖式笔算等都是算法,至于乘法口诀、珠算口诀更是算法的具体体现。我们知道解一元二次方程的算法,求解一元一次不等式、一元二次不等式的算法,解线性方程组的算法,求两个数的最大公因数的算法等。因此,算法其实是重要的数学对象。2、 探索研究算法 (algorithm)一词源于算术(algorism),即算术方法, 是指一个由已知推求未知的运算过程。后来,人们把它推广到一般,把进行某一工作的方法和步骤称为算法。广义地说, 算法就是做某一件事的步骤或程序。菜谱是做菜肴的算法,洗衣机的使用说明书是操作洗衣机的算法,歌谱是一首歌曲的算法。在数学中, 主要研究计算机能实现的算法,即按照某种机械程序步骤一定可以得到结果的解决问题的程序。比如解方程的算法、函数求值的算法、作图的算法,等等。3 例题分析:精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 1 页,共 41 页学习必备欢迎下载例 1 任意给定一个大于1 的整数 n, 试设计一个程序或步骤对n是否为质数1做出判定。算法分析:根据质数的定义,很容易设计出下面的步骤:第一步:判断n 是否等于2,若 n=2,则 n 是质数;若n2,则执行第二步。第二步:依次从2 至( n-1 )检验是不是n 的因数,即整除n 的数,若有这样的数,则n 不是质数;若没有这样的数,则n 是质数。这是判断一个大于1 的整数 n 是否为质数的最基本算法。例 2 用二分法设计一个求议程x22=0 的近似根的算法。算法分析:回顾二分法解方程的过程,并假设所求近似根与准确解的差的绝对值不超过 0.005 ,则不难设计出以下步骤:第一步:令f(x)=x22。因为 f(1)0 ,所以设x1=1,x2=2。第二步:令m=(x1+x2)/2 ,判断 f(m) 是否为 0,若则,则m为所长;若否,则继续判断f(x1) f(m) 大于 0 还是小于0。第三步:若f(x1) f(m)0 ,则令 x1=m ;否则,令x2=m 。第四步:判断 |x1x2|max, 则 max=b. S3 如果 Cmax, 则 max=c. S4 max 就是 a,b,c中的最大值。综合应用题例 5 写出求 1+2+3+4+5+6 的一个算法。分析:可以按逐一相加的程序进行,也可以利用公式1+2+ +n=2) 1(nn进行, 也可以根据加法运算律简化运算过程。解:算法1:S1:计算 1+2 得到 3;S2:将第一步中的运算结果3 与 3 相加得到6;S3:将第二步中的运算结果6 与 4 相加得到10;S4:将第三步中的运算结果10 与 5 相加得到15;S5:将第四步中的运算结果15 与 6 相加得到21。算法 2:S1:取 n=6;S2:计算2) 1(nn;S3:输出运算结果。算法 3:S1:将原式变形为(1+6)+(2+5)+(3+4)=37;S2:计算 3 7;精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 3 页,共 41 页学习必备欢迎下载S3:输出运算结果。小结 :算法 1 是最原始的方法,最为繁琐,步骤较多,当加数较大时,比如1+2+3+10000,再用这种方法是行不通的;算法 2 与算法 3 都是比较简单的算法,但比较而言, 算法 2 最为简单,且易于在计算机上执行操作。学生做一做求 1357 911 的值,写出其算法。老师评一评算法 1;第一步,先求13,得到结果3;第二步,将第一步所得结果3 再乘以 5,得到结果15;第三步,再将15 乘以 7,得到结果105;第四步,再将105 乘以 9,得到 945;第五步,再将945 乘以 11,得到 10395,即是最后结果。算法 2:用 P表示被乘数,i 表示乘数。S1 使 P=1。S2 使 i=3 S3 使 P=P i S4 使 i=i+2 S5 若 i 11,则返回到S3继续执行;否则算法结束。小结由于计算机动是高速计算的自动机器,实现循环的语句。因此, 上述算法 2不仅是正确的,而且是在计算机上能够实现的较好的算法。在上面的算法中,S3,S4,S5 构成一个完整的循环,这里需要说明的是,每经过一次循环之后,变量 P、i 的值都发生了变化,并且生循环一次之后都要在步骤S5对 i 的值进行检验, 一旦发现 i 的值大于11 时,立即停止循环, 同时输出最后一个P的值,对于循环结构的详细情况,我们将在以后的学习中介绍。4、课堂小结本节课主要讲了算法的概念,算法就是解决问题的步骤,平时列论我们做什么事都离不开算法,算法的描述可以用自然语言,也可以用数学语言。例如, 某同学要在下午到体育馆参加比赛,比赛下午 2 时开始, 请写出该同学从家里发到比赛地的算法。若用自然语言来描述可写为(1)1:00 从家出发到公共汽车站(2)1:10 上公共汽车(3)1:40 到达体育馆(4)1:45 做准备活动。(5)2:00 比赛开始。若用数学语言来描述可写为:S1 1:00从家出发到公共汽车站S2 1:10上公共汽车S3 1:40到达体育馆S4 1:45做准备活动S5 2:00比赛开始精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 4 页,共 41 页学习必备欢迎下载大家从中要以看出,实际上两种写法无本质区别,但我们在书写时应尽量用教学语言来描述,它的优越性在以后的学习中我们会体会到。5、自我评价1、写出解一元二次方程ax2+bx+c=0(a 0) 的一个算法。2、写出求1 至 1000 的正数中的3 倍数的一个算法(打印结果)6、评价标准1、解:算法如下S1 计算 =b2-4ac S2 如果 0,则方程无解;否则x1= S3 输出计算结果x1,x2 或无解信息。2、解:算法如下:S1 使 i=1 S2 i被 3 除,得余数r S3 如果 r=0,则打印i ,否则不打印S4 使 i=i+1 S5 若 i 1000, 则返回到S2继续执行,否则算法结束。7、作业: 1、写出解不等式x2-2x-30 的一个算法。解:第一步:x2-2x-3=0 的两根是x1=3,x2=-1。第二步:由x2-2x-30 可知不等式的解集为x | -1x0 的不等式的解的步骤(为方便,我们设a0)如下:第一步:计算= acb42;第二步:若 0,示出方程两根aacbbx2422, 1(设x1x2) ,则不等式解集为x | xx1或xx2;第三步:若 = 0 ,则不等式解集为x | xR且xab2 ;第四步:若 c , a+cb, b+ca是否否同时成立?是s=p(p-2)(p-3)(p-4)结束开始结束精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 9 页,共 41 页学习必备欢迎下载3)循环结构:在一些算法中,经常会出现从某处开始,按照一定条件,反复执行某一处理步骤的情况,这就是循环结构,反复执行的处理步骤为循环体,显然,循环结构中一定包含条件结构。循环结构又称重复结构,循环结构可细分为两类:(1)一类是当型循环结构,如图1-5 (1)所示,它的功能是当给定的条件P1 成立时,执行 A框,A框执行完毕后,再判断条件P1是否成立,如果仍然成立,再执行A框,如此反复执行 A框,直到某一次条件P1不成立为止,此时不再执行A框,从 b 离开循环结构。(2)另一类是直到型循环结构,如下图所示,它的功能是先执行,然后判断给定的条件 P2是否成立, 如果 P2仍然不成立, 则继续执行A框,直到某一次给定的条件P2成立为止,此时不再执行A框,从 b 点离开循环结构。 A A P1? P2?不成立不成立成立 b b 当型循环结构直到型循环结构(1)(2)例 4:设计一个计算1+2+100 的值的算法,并画出程序框图。算法分析:只需要一个累加变量和一个计数变量,将累加变量的初始值为0,计数变量的值可以从1 到 100。程序框图:精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 10 页,共 41 页学习必备欢迎下载i 100?否是3、课堂小结:本节课主要讲述了程序框图的基本知识,包括常用的图形符号、算法的基本逻辑结构,算法的基本逻辑结构有三种,即顺序结构、 条件结构和循环结构。其中顺序结构是最简单的结构, 也是最基本的结构,循环结构必然包含条件结构,所以这三种基本逻辑结构是相互支撑的, 它们共同构成了算法的基本结构,无论怎样复杂的逻辑结构,都可以通过这三种结构来表达4、自我评价:1)设 x 为为一个正整数,规定如下运算:若x 为奇数,则求 3x+2;若 x 为偶数,则为 5x,写出算法,并画出程序框图。2)画出求 21+22+23+2100的值的程序框图。5、评价标准:1解:算法如下。S1 输入 x S2 若 x 为奇数,则输出 A=3x+2 ;否则输出 A=5x S3 算法结束。程序框图如下图:开始结束i=1 Sum=0 i=i+1 Sum=sum+i 输出 sum 开始i=1 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 11 页,共 41 页学习必备欢迎下载输出 p i30? 是否2、 解:序框图如下图 : p=0 p=pxi 结束i=i+1 开始i=1 p=0 p=p+2i i=i+1 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 12 页,共 41 页学习必备欢迎下载输出 p i100? 否是6、作业: 课本 P11 习题 1.1 A 组 2、3 第一课时1.2.1 输入、输出语句和赋值语句一、三维目标:1、知识与技能(1)正确理解输入语句、输出语句、赋值语句的结构。(2)会写一些简单的程序。(3)掌握赋值语句中的“=”的作用。2、过程与方法(1)让学生充分地感知、体验应用计算机解决数学问题的方法;并能初步操作、模仿。(2)通过对现实生活情境的探究,尝试设计出解决问题的程序,理解逻辑推理的数学方法。3、情感态度与价值观通过本节内容的学习,使我们认识到计算机与人们生活密切相关,增强计算机应用意识,提高学生学习新知识的兴趣。结束精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 13 页,共 41 页学习必备欢迎下载二、重点与难点重点:正确理解输入语句、输出语句、赋值语句的作用。难点:准确写出输入语句、输出语句、赋值语句。三、学法与教学用具计算机、图形计算器四、教学设计【 创设情境 】在现代社会里, 计算机已经成为人们日常生活和工作不可缺少的工具,如: 听 MP3,看电影, 玩游戏, 打字排版, 画卡通画, 处理数据等等, 那么,计算机是怎样工作的呢?计算机完成任何一项任务都需要算法,但是,我们用自然语言或程序框图描述的算法,计算机是无法“看得懂,听得见”的。因此还需要将算法用计算机能够理解的程序设计语言( programming language)翻译成计算机程序。程序设计语言有很多种。如BASIC , Foxbase, C 语言, C+,J+,VB 等。为了实现算法中的三种基本的逻辑结构:顺序结构、 条件结构和循环结构,各种程序设计语言中都包含下列基本的算法语句:这就是这一节所要研究的主要内容基本算法语句。今天,我们先一起来学习输入、输出语句和赋值语句。(板出课题)【 探究新知 】我们知道,顺序结构是任何一个算法都离不开的基本结构。输入、输出语句和赋值语句基本上对应于算法中的顺序结构。(如右图) 计算机从上而下按照语句排列的顺序执行这些语句。输入语句和输出语句分别用来实现算法的输入信息,输出结果的功能。如下面的例子:用描点法作函数3232430yxxx的图象时,需要求出自变量与函数的一组对应值。编写程序,分别计算当5, 4, 3, 2, 1,0,1,2,3,4,5x时的函数值。程序: ( 教师可在课前准备好该程序,教学中直接调用运行) (学生先不必深究该程序如何得来,只要求懂得上机操作,模仿编写程序,通过运行自己编写的程序发现问题所在,进一步提高学生的模仿能力。)提问:在这个程序中,你们觉得哪些是输入语句、输出语句和赋值语句呢?(同学们互相交流、议论、猜想、概括出结论。提示:“input”和“ print”的中文意思等)输入语句输出语句赋值语句条件语句循环语句INPUT“ x=”;x y=x3+3 * x2- 24* x+30PRINTx PRINTy END语句 n+1 语句 n 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 14 页,共 41 页学习必备欢迎下载(一)输入语句在该程序中的第1 行中的 INPUT 语句就是 输入语句 。这个语句的一般格式是:其中, “提示内容”一般是提示用户输入什么样的信息。如每次运行上述程序时,依次输入 -5 ,-4 ,-3 ,-2,-1,0,1,2,3,4,5,计算机每次都把新输入的值赋给变量“ x” , 并按“ x”新获得的值执行下面的语句。INPUT语句不但可以给单个变量赋值,还可以给多个变量赋值,其格式为:例如,输入一个学生数学,语文,英语三门课的成绩,可以写成:INPUT “数学,语文,英语” ;a,b,c 注:“提示内容”与变量之间必须用分号“;”隔开。各“提示内容”之间以及各变量之间必须用逗号“, ”隔开。 但最后的变量的后面不需要。(二)输出语句在该程序中,第3 行和第 4 行中的 PRINT 语句是 输出语句 。它的一般格式是:同输入语句一样,表达式前也可以有“提示内容”。例如下面的语句可以输出斐波那契数列:此时屏幕上显示:The Fibonacci Progression is: 1 1 2 3 5 8 13 21 34 55 输出语句的用途:(1)输出常量,变量的值和系统信息。(2)输出数值计算的结果。思考:在1.1.2中程序框图中的输入框,输出框的内容怎样用输入语句、输出语句来表达?(学生讨论、交流想法,然后请学生作答)参考答案:输入框: INPUT “请输入需判断的整数n=”; n 输出框: PRINT n; “是质数。” PRINT n; “不是质数。 ”(三)赋值语句用来表明赋给某一个变量一个具体的确定值的语句。除了输入语句, 在该程序中第2 行的 赋值语句 也可以给变量提供初值。它的一般格式是:INPUT “提示内容” ;变量INPUT “提示内容1,提示内容2,提示内容3,” ;变量 1,变量 2,变量 3,PRINT “提示内容” ;表达式PRINT“The Fibonacci Progression is: ” ;1 1 2 3 5 8 13 21 34 55 “”精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 15 页,共 41 页学习必备欢迎下载赋值语句中的“=”叫做赋值号。赋值语句的作用: 先计算出赋值号右边表达式的值,然后把这个值赋给赋值号左边的变量,使该变量的值等于表达式的值。注:赋值号左边只能是变量名字,而不能是表达式。如:2=X是错误的。赋值号左右不能对换。如“A=B”“ B=A”的含义运行结果是不同的。不能利用赋值语句进行代数式的演算。(如化简、因式分解、解方程等)赋值号“=”与数学中的等号意义不同。思考:在1.1.2中程序框图中的输入框,哪些语句可以用赋值语句表达?并写出相应的赋值语句。 (学生思考讨论、交流想法。)【 例题精析 】例 1 :编写程序,计算一个学生数学、语文、英语三门课的平均成绩。分析:先写出算法,画出程序框图,再进行编程。算法:程序:例 2:给一个变量重复赋值。程序: 变式引申 :在此程序的基础上,设计一个程序,要求最后A的输出值是30。(该变式的设计意图是学生加深对重复赋值的理解)程序:变量=表达式INPUT “数学 =”;a INPUT “语文 =”;b INPUT “英语 =”;c y=(a+b+c)/3PRINT“ The average=” ;y ENDA=10 A=A+10PRINTA ENDA=10 A=A+15PRINTA A=A+5 PRINTA END开始输入 a,b,c 结束输出 y 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 16 页,共 41 页学习必备欢迎下载例 3:交换两个变量A和 B的值,并输出交换前后的值。分析: 引入一个中间变量X,将 A的值赋予X,又将 B的值赋予A, 再将 X的值赋予B,从而达到交换A,B的值。 (比如交换装满水的两个水桶里的水需要再找一个空桶)程序:补例:编写一个程序, 要求输入一个圆的半径,便能输出该圆的周长和面积。(取 3.14)分析:设圆的半径为R,则圆的周长为2CR,面积为2SR,可以利用顺序结构中的INPUT 语句, PRINT 语句和赋值语句设计程序。程序:【 课堂精练 】P15 练习1. 2. 3 参考答案:1. 程序 : INPUT “请输入华氏温度: ” ;xy=( x-32)*5/9 PRINT “华氏温度: ” ;xPRINT“摄氏温度:” ;y END 提问:如果要求输入一个摄氏温度,输出其相应的华氏温度,又该如何设计程序?(学生课后思考,讨论完成)2. 程序:INPUT “请输入a(a0)=” ;a INPUT “请输入b(b0)=” ;b X=a+b Y=a- b Z=a*b Q=a/b PRINTa, b PRINTX , Y, Z, Q END 3. 程序:p=( 2+3+4)/ 2 t=p*(p-2)*(p-3)*(p-4) INPUTA INPUTB PRINTA, B X=A A=B B=XPRINTA, B ENDINPUT “半径为 R=” ;R C=2* 3.14* R S=3.14*R2 PRINT“该圆的周长为:”;C PRINT“该圆的面积为:”;S END精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 17 页,共 41 页学习必备欢迎下载s=SQR(t) PRINT “该三角形的面积为: ” ;s END 注 :SQR() 是函数名,用来求某个数的平方根。【 课堂小结 】本节课介绍了输入语句、输出语句和赋值语句的结构特点及联系。掌握并应用输入语句, 输出语句, 赋值语句编写一些简单的程序解决数学问题,特别是掌握赋值语句中“ =”的作用及应用。编程一般的步骤:先写出算法,再进行编程。我们要养成良好的习惯,也有助于数学逻辑思维的形成。【 评价设计 】1P23习题 1.2 A 组 1( 2) 、2 2试对生活中某个简单问题或是常见数学问题,利用所学基本算法语句等知识来解决自己所提出的问题。要求写出算法,画程序框图,并写出程序设计。第二、三课时1.2.2-1.2.3 条件语句和循环语句一、三维目标:1、知识与技能(1)正确理解条件语句和循环语句的概念,并掌握其结构的区别与联系。(2)会应用条件语句和循环语句编写程序。2、过程与方法经历对现实生活情境的探究,认识到应用计算机解决数学问题方便简捷,促进发展学生逻辑思维能力3、情感态度与价值观了解条件语句在程序中起判断转折作用,在解决实际问题中起决定作用。深刻体会到循环语句在解决大量重复问题中起重要作用。减少大量繁琐的计算。通过本小节内容的学习,有益于我们养成严谨的数学思维以及正确处理问题的能力。二、重点与难点重点:条件语句和循环语句的步骤、结构及功能。难点:会编写程序中的条件语句和循环语句。三、学法与教学用具计算机、图形计算器四、教学设计精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 18 页,共 41 页学习必备欢迎下载【 创设情境 】试求自然数1+2+3+ +99+100 的和。显然大家都能准确地口算出它的答案:5050。而能不能将这项计算工作交给计算机来完成呢?而要编程,以我们前面所学的输入、输出语句和赋值语句还不能满足“我们日益增长的物质需要”,因此,还需要进一步学习基本算法语句中的另外两种:条件语句和循环语句(板出课题)【 探究新知 】(一)条件语句算法中的条件结构是由条件语句来表达的,是处理条件分支逻辑结构的算法语句。它的一般格式是: (IF- THEN - ELSE 格式 )当计算机执行上述语句时,首先对IF 后的条件进行判断,如果条件符合,就执行 THEN 后的语句1,否则执行ELSE 后的语句2。其对应的程序框图为:(如上右图)在某些情况下,也可以只使用IF- THEN 语句:(即 IF - THEN 格式 )计算机执行这种形式的条件语句时,也是首先对IF 后的条件进行判断,如果条件符合,就执行THEN后的语句,如果条件不符合,则直接结束该条件语句,转而执行其他语句。其对应的程序框图为:(如上右图)条件语句的作用:在程序执行过程中,根据判断是否满足约定的条件而决定是否需要转换到何处去。需要计算机按条件进行分析、比较、 判断,并按判断后的不同情况进行不同的处理。【 例题精析 】例 1 :编写程序,输入一元二次方程20axbxc的系数,输出它的实数根。分析:先把解决问题的思路用程序框图表示出来,然后再根据程序框图给出的算法步骤,逐步把算法用对应的程序语句表达出来。IF 条件THEN语句 1 ELSE 语句 2 END IF 满足条件?语句 1 语句 2 是否IF条件THEN语句END IF 满足条件?语句是否精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 19 页,共 41 页学习必备欢迎下载算法分析:我们知道,若判别式240bac,原方程有两个不相等的实数根12bxa、22bxa;若0,原方程有两个相等的实数根122bxxa;若0,原方程没有实数根。也就是说,在求解方程之前,需要首先判断判别式的符号。因此,这个过程可以用算法中的条件结构来实现。又因为方程的两个根有相同的部分,为了避免重复计算,可以在计算1x和2x之 前 , 先 计 算2bpa,2qa。 程序框图:(参照课本17P)程序: ( 如右图所示 ) 注: SQR()和 ABS()是两个函数,分别用来求某个数的平方根和绝对值。即( )xxSQR,(0)( )- (0).x xxx xABS例 2 :编写程序,使得任意输入的3 个整数按从大到小的顺序输出。算法分析 :用 a,b,c 表示输入的3 个整数;为了节约变量,把它们重新排列后,仍用a,b,c 表示,并使abc.具体操作步骤如下。第一步:输入3 个整数 a,b,c. 第二步:将a 与 b 比较,并把小者赋给b,大者赋给a. 第三步:将a 与 c 比较 . 并把小者赋给c,大者赋给a,此时a 已是三者中最大的。第四步:将b 与 c 比较,并把小者赋给c,大者赋给b,此时 a,b, c 已按INPUT“Please input a,b,c =”;a,b,c d=b* b- 4*a*c p=-b/(2 * a) q=SQR(ABS(d) /(2 *a) IF d=0 THEN x1=p+qx2=p- qIF x1=x2 THEN PRINT “ One real root: ” ;x1 ELSE PRINT “ Two real roots:x1” ;x1,“and x2”;x2 END IF ELSE PRINT “ No real root! ”END IF END INPUT“a, b,c =”;a,b,c IF ba THEN t=a a=b b=t END IF IF ca THEN t=a a=c c=t END IF IF cb THEN t=b b=c c=t END IF PRINT a ,b,c END 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 20 页,共 41 页学习必备欢迎下载从大到小的顺序排列好。第五步:按顺序输出a, b,c.程序框图:(参照课本19P)程序: ( 如右框图所示)补例:铁路部门托运行李的收费方法如下:y 是收费额(单位:元) ,x 是行李重量(单位:kg), 当 0 x20 时,按 0.35元/kg 收费,当x20kg 时, 20kg 的部分按0.35 元/kg, 超出 20kg 的部分,则按0.65 元 /kg 收费,请根据上述收费方法编写程序。分析:首先由题意得:0.35 ,020,0.35 20 0.65(20),20.xxxxy该函数是个分段函数。 需要对行李重量作出判断,因此, 这个过程可以用算法中的条件结构来实现。程序:INPUT“请输入旅客行李的重量(kg) x=”; x IF x0 AND xc AND a+cb AND b+ca THEN PRINT “以下列三个数:”;a,b, c, “可以构成三角形。 ”ELSE PRINT “以下列三个数:”;a,b, c, “不可以构成三角形! ”END IF END (二)循环语句算法中的循环结构是由循环语句来实现的。对应于程序框图中的两种循环结构,一般程序设计语言中也有当型(WHILE 型)和直到型(UNTIL 型)两种语句结构。即 WHILE 语句和 UNTIL 语句。(1)WHILE 语句的一般格式是:WHILE 条件循环体WEND 满足条件?循环体是否精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 21 页,共 41 页学习必备欢迎下载其中循环体是由计算机反复执行的一组语句构成的。WHLIE后面的“条件”是用于控制计算机执行循环体或跳出循环体的。当计算机遇到WHILE 语句时,先判断条件的真假, 如果条件符合, 就执行 WHILE与 WEND 之间的循环体; 然后再检查上述条件,如果条件仍符合,再次执行循环体,这个过程反复进行,直到某一次条件不符合为止。这时, 计算机将不执行循环体,直接跳到 WEND 语句后,接着执行WEND 之后的语句。 因此,当型循环有时也称为 “前测试型”循环。其对应的程序结构框图为:(如上右图)(2)UNTIL 语句的一般格式是:其对应的程序结构框图为:(如上右图)思考:直到型循环又称为“后测试型”循环,参照其直到型循环结构对应的程序框图,说说计算机是按怎样的顺序执行UNTIL语句的?(让学生模仿执行WHILE 语句的表述)从 UNTIL 型循环结构分析,计算机执行该语句时,先执行一次循环体,然后进行条件的判断, 如果条件不满足, 继续返回执行循环体,然后再进行条件的判断,这个过程反复进行,直到某一次条件满足时,不再执行循环体,跳到 LOOP UNTIL语句后执行其他语句,是先执行循环体后进行条件判断的循环语句。提问: 通过对照, 大家觉得 WHILE 型语句与UNTIL 型语句之间有什么区别呢?(让学生表达自己的感受)区别: 在 WHILE语句中,是当条件满足时执行循环体,而在UNTIL语句中,是当条件不满足时执行循环体。【 例题精析 】例 3 :编写程序,计算自然数1+2+3+ +99+100 的和。分析:这是一个累加问题。我们可以用WHILE型语句,也可以用UNTIL型语句。由此看来, 解决问题的方法不是惟一的,当然程序的设计也是有多种的,只是程序简单与复杂的问题。程 序 :WHILE型 :UNTIL 型:例 4 :根据 1.1.2中的图 1.1-2, 将程序框图转化为程序语句。分析:仔细观察,该程序框图中既有条件结构,又有循环结构。DO循环体LOOP UNTIL 条件满足条件?循环体是否i=1 sum=0 WHLIE i100 PRINT sum END 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 22 页,共 41 页学习必备欢迎下载程序:思考: 上述判定质数的算法是否还能有所改进?(让学生课后思考。)补例:某纺织厂1997 年的生产总值为300 万元,如果年生产增产率为5,计算最早在哪一年生产总值超过400 万元。分析:从 1997 年底开始,经过x 年后生产总值为300(1+5)x, 可将 1997 年生产总值赋给变量a,然后对其进行累乘,用n 作为计数变量进行循环,直到a 的值超过 400 万元为止。解:程序框图为:程序:【 课堂精练 】123P练习2. 3 (题略)参考答案:2. 解:程序:X=1 WHILE X=20 INPUT“n=”;n flag=1 IF n2 THEN d=2 WHILE d400? a=a*p a=300,p=1.05,n=1997 n=n+1 输出 n 结束否是a=300 p=1.05 n=1997 DO a=a* p n=n+1 LOOP UNTIL a400 PRINT n END 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 23 页,共 41 页学习必备欢迎下载Y=X2 - 3* X+5X=X+1 PRINT“Y =”; YWEND END 3解:程序:INPUT “ 请输入正整数n=” ;n a=1 i=1 WHILE in?r=m MOD nr=0?m=nn=r结束开始x=nn=mm=x输出 n否是否是程序:INPUT “m= ”;m INPUT “n=”;n IF mn THEN x=m m=n n=x END IF r=m MOD n WHILE r0 r=m MOD n m=n n=r WEND PRINT m END 5. 课堂练习一. 用辗转相除法求下列各组数的最大公约数,并在自己编写的BASIC程序中验证。(1)225;135 (2)98;196 (3)72;168 (4)153;119 二. 思考:用求质因数的方法可否求上述4 组数的最大公约数?可否利用求质因数的算法设计出程序框图及程序?若能,在电脑上测试自己的程序;若不能说明无法实现的理由。三。思考: 利用辗转相除法是否可以求两数的最大公倍数?试设计程序框图并转换成程序在 BASIC中实现。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 27 页,共 41 页学习必备欢迎下载6. 小结:辗转相除法与更相减损术求最大公约数的计算方法及完整算法程序的编写。五、评价设计作业: P38 A(1)B(2)补充:设计更相减损术求最大公约数的程序框图第三、四课时秦九韶算法与排序一、三维目标(a)知识与技能1. 了解秦九韶算法的计算过程,并理解利用秦九韶算法可以减少计算次数提高计算效率的实质。2. 掌握数据排序的原理能使用直接排序法与冒泡排序法给一组数据排序,进而能设计冒泡排序法的程序框图及程序,理解数学算法与计算机算法的区别,理解计算机对数学的辅助作用。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 28 页,共 41 页学习必备欢迎下载(b)过程与方法模仿秦九韶计算方法,体会古人计算构思的巧妙。能根据排序法中的直接插入排序法与冒泡排序法的步骤,了解数学计算转换为计算机计算的途径,从而探究计算机算法与数学算法的区别,体会计算机对数学学习的辅助作用。(c)情态与价值观通过对秦九韶算法的学习,了解中国古代数学家对数学的贡献,充分认识到我国文化历史的悠久。 通过对排序法的学习,领会数学计算与计算机计算的区别,充分认识信息技术对数学的促进。二、教学重难点重点: 1. 秦九韶算法的特点2. 两种排序法的排序步骤及计算机程序设计难点: 1. 秦九韶算法的先进性理解2. 排序法的计算机程序设计三、学法与教学用具学法: 1. 探究秦九韶算法对比一般计算方法中计算次数的改变,体会科学的计算。2. 模仿排序法中数字排序的步骤,理解计算机计算的一般步骤,领会数学计算在计算机上实施的要求。教学用具:电脑,计算器,图形计算器四、教学设计(一)创设情景,揭示课题我们已经学过了多项式的计算,下面我们计算一下多项式1)(2345xxxxxxf当5x时的值,并统计所做的计算的种类及计算次数。根据我们的计算统计可以得出我们共需要10 次乘法运算,5 次加法运算。我们把多项式变形为:1)1(1(1()(2xxxxxxf再统计一下计算当5x时的值时需要的计算次数,可以得出仅需4 次乘法和5 次加法运算即可得出结果。显然少了6 次乘法运算。这种算法就叫秦九韶算法。(二)研探新知1. 秦九韶计算多项式的方法01210123120132211012211)()()()(aaxaxaxaaxaxaxaxaaxaxaxaxaaxaxaxaxaxfnnnnnnnnnnnnnnnnnnn例 1 已知一个5 次多项式为8.07 .16.25. 325)(2345xxxxxxf用秦九韶算法求这个多项式当5x时的值。解:略思考: (1)例 1 计算时需要多少次乘法计算?多少次加法计算?(2)在利用秦九韶算法计算n 次多项式当0 xx时需要多少次乘法计算和多少次加精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 29 页,共 41 页学习必备欢迎下载法计算?练习:利用秦九韶算法计算15 .033.016.041.083.0)(2345xxxxxxf当5x时的值,并统计需要多少次乘法计算和多少次加法计算?例 2 设计利用秦九韶算法计算5 次多项式0122334455)(axaxaxaxaxaxf当0 xx时的值的程序框图。解:程序框图如下:开始输入f(x)的系数:a1,a2,a3,a4,a5输入x0n=1v=a5n 5v=v x0+a5-nn=n+1输出v结束是否练习:利用程序框图试编写BASIC程序并在计算机上测试自己的程序。2. 排序在信息技术课中我们学习过电子表格, 电子表格对分数的排序非常简单, 那么电子计算机是怎么对数据进行排序的呢? 阅读课本 P30P31 面的内容 , 回答下面的问题: (1) 排序法中的直接插入排序法与冒泡排序法的步骤有什么区别? (2) 冒泡法排序中对5 个数字进行排序最多需要多少趟? (3) 在冒泡法排序对5 个数字进行排序的每一趟中需要比较大小几次? 游戏 :5 位同学每人拿一个数字牌在讲台上演示冒泡排序法对5 个数据 4,11,7,9,6排序的过程 , 让学生通过观察叙述冒泡排序法的主