1、1.2.2 条 件 语 句一、三维教学目标:(1)知识与能力 :正确理解条件语句的概念,并掌握其结构;掌握应用条件语句编写程序。(2)过程与方法:经历对现实生活情境的探究,认识到应用计算机解决数学问题方便简捷,促进发展学生逻辑思维能力(3)情感、态度、价值观:了解条件语句在程序中起判断转折作用,在解决实际问题中起决定作用。减少大量繁琐的计算。通过本小节内容的学习,有益于我们养成严谨的数学思维以及正确处理问题的能力。二教学重、难点:会编写程序中的条件语句三教学工具:多媒体四教学安排:一课时五教学过程:(一)、创设情境,引入新课:【问题】:求自然数1+2+3+99+100的和。显然大家都能准确地口
2、算出它的答案:5050。而能不能将这项计算工作交给计算机来完成呢?而要编程,以我们前面所学的输入、输出语句和赋值语句还不能满足“我们日益增长的物质需要”,因此,还需要进一步学习基本算法语句中的另外两种,我们首先学习条件语句。(二)、师生互动,探究新知:算法中的条件结构是由条件语句来表达的,是处理条件分支逻辑结构的算法语句。它的一般格式是:(IF-THEN-ELSE格式)IF 条件 THEN语句1ELSE语句2END IF满足条件?语句1语句2是否当计算机执行上述语句时,首先对IF后的条件进行判断,如果条件符合,就执行THEN后的语句1,否则执行ELSE后的语句2。其对应的程序框图为:(如上右图
3、)在某些情况下,也可以只使用IF-THEN语句:(即IF-THEN格式)IF 条件 THEN语句END IFIF 条件 THEN语句END IF满足条件?语句是否IF 条件 THEN语句END IF计算机执行这种形式的条件语句时,也是首先对IF后的条件进行判断,如果条件符合,就执行THEN后的语句,如果条件不符合,则直接结束该条件语句,转而执行其他语句。其对应的程序框图为:(如上右图)条件语句的作用:在程序执行过程中,根据判断是否满足约定的条件而决定是否需要转换到何处去。需要计算机按条件进行分析、比较、判断,并按判断后的不同情况进行不同的处理。(三)、典型例题,精讲细析:例1:编写程序,输入一
4、元二次 方程 的系数,输出它的实数根。分析:先把解决问题的思路用程序框图表示出来,然后再根据程序框图给出的算法步骤,逐步把算法用对应的程序语句表达出来。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:”;x1ELSEPRINT “Two real roots:x1”;x1,“and x2”;x2END IFELSEPRINT “No real root!”END IFEND算
5、法分析:我们知道,若判别式 ,原方程有两个不相等的实数根 、 ;若,原方程有两个相等的实数根 ; 若 ,原方程没有实数根。也就是说,在求解方程之前,需要首先判断判别式的符号。因此,这个过程可以用算法中的条件结构来实现。又因为方程的两个根有相同的部分,为了避免重复计算,可以在计算 和 之前先计算 , 。程序框图:(参照课本)程序:(如右图所示)注:SQR()和ABS()是两个函数,分别用来求某个数的平方根和绝对值。即 , 例2:编写程序,使得任意输入的3个整数按从大到小的顺序输出。算法分析:用a,b,c表示输入的3个整数;为了节约变量,把它们重新排列后,仍用a,b,c表示,并使abc.具体操作步
6、骤如下。INPUT “a,b,c =”;a,b,cIF ba THENt=aa=bb=tEND IFIF ca THENt=aa=cc=tEND IFIF cb THENt=bb=cc=tEND IF PRINT a,b,cEND第一步:输入3个整数a,b,c.第二步:将a与b比较,并把小者赋给b,大者赋给a.第三步:将a与c比较. 并把小者赋给c,大者赋给a,此时a已是三者中最大的。第四步:将b与c比较,并把小者赋给c,大者赋给b,此时a,b,c已按从大到小的顺序排列好。第五步:按顺序输出a,b,c.程序框图:(参照课本P28)程序:(如右所示) 四、勇于尝试,练习巩固:1.铁路部门托运行李
7、的收费方法如下:y是收费额(单位:元),x是行李重量(单位:kg),当0x20时,按0.35元/kg收费,当x20kg时,20kg的部分按0.35元/kg,超出20kg的部分,则按0.65元/kg收费,请根据上述收费方法编写程序。分析:首先由题意得: 该函数是个分段函数。需要对行李重量作出判断,因此,这个过程可以用算法中的条件结构来实现。程序: INPUT “请输入旅客行李的重量(kg)x=”;xIF x0 AND x=20 THENy=0.35*xELSEy=0.35*20+0.65*(x-20)END IFPRINT “该旅客行李托运费为:”;yEND2. P29 练习 1、2 3P29 练习3.五、课堂小结:本节课主要学习了条件语句的结构、特点、作用以及用法,并懂得利用解决一些简单问题。条件语句使程序执行产生的分支,根据不同的条件执行不同的路线,使复杂问题简单化。条件语句一般用在需要对条件进行判断的算法设计中,如判断一个数的正负,确定两个数的大小等问题,还有求分段函数的函数值等,往往要用条件语句,有时甚至要用到条件语句的嵌套。六课后作业:1教材P33 习题A组:1,2; 2. 同步作业:第六课时;3.预习:1.2.3 循环语句。