必修3教案122-123条件语句和循环语句

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第二、三课时1.2.2-1.2.3条件语句和循环语句一、三维目标:1、知识与技能(1)正确理解条件语句和循环语句的概念,并掌握其结构的区别与联系。(2)会应用条件语句和循环语句编写程序。2、过程与方法经历对现实生活情境的探究,认识到应用计算机解决数学问题方便简捷,促进发展学生逻辑思维能力3、情感态度与价值观了解条件语句在程序中起判断转折作用,在解决实际问题中起决定作用。深刻体会到循环语句在解决大量重复问题中起重要作用。减少大量繁琐的计算。通过本小节内容的学习,有益于我们养成严谨的数学思维以及正确处理问题的能力。二、重点与难点重点:条件语句和循环语句的步骤、结构及功能。难点:会编写程序中的条件语句和循环语句。三、学法与教学用具计算机、图形计算器四、教学设计【创设情境】试求自然数1+2+3+……+99+100的和。显然大家都能准确地口算出它的答案:5050。而能不能将这项计算工作交给计算机来完成呢?而要编程,以我们前面所学的输入、输出语句和赋值语句还不能满足“我们日益增长的物质需要”,因此,还需要进一步学习基本算法语句中的另外两种:条件语句和循环语句(板出课题)【探究新知】(一)条件语句算法中的条件结构是由条件语句来表达的,是处理条件分支逻辑结构的算法语句。它的一般格式是:(IF-THEN-ELSE格式)当计算机执行上述语句时,首先对IF后的条件进行判断,如果条件符合,就执行THEN后的语句1,否则执行ELSE后的语句2。其对应的程序框图为:(如上右图)在某些情况下,也可以只使用IF-THEN语句:(即IF-THEN格式)IF条件THEN语句1ELSE语句2ENDIF满足条件?语句1语句2是否计算机执行这种形式的条件语句时,也是首先对IF后的条件进行判断,如果条件符合,就执行THEN后的语句,如果条件不符合,则直接结束该条件语句,转而执行其他语句。其对应的程序框图为:(如上右图)条件语句的作用:在程序执行过程中,根据判断是否满足约定的条件而决定是否需要转换到何处去。需要计算机按条件进行分析、比较、判断,并按判断后的不同情况进行不同的处理。【例题精析】〖例1〗:编写程序,输入一元二次方程20axbxc的系数,输出它的实数根。分析:先把解决问题的思路用程序框图表示出来,然后再根据程序框图给出的算法步骤,逐步把算法用对应的程序语句表达出来。算法分析:我们知道,若判别式240bac,原方程有两个不相等的实数根12bxa、22bxa;若0,原方程有两个相等的实数根122bxxa;若0,原方程没有实数根。也就是说,在求解方程之前,需要首先判断判别式的符号。因此,这个过程可以用算法中的条件结构来实现。又因为方程的两个根有相同的部分,为了避免重复计算,可以在计算1x和2x之前,先计算IF条件THEN语句ENDIF满足条件?语句是否INPUT“Pleaseinputa,b,c=”;a,b,cd=b*b-4*a*cp=-b/(2*a)q=SQR(ABS(d))/(2*a)IFd=0THENx1=p+qx2=p-qIFx1=x2THENPRINT“Onerealroot:”;x1ELSEPRINT“Tworealroots:x1”;x1,“andx2”;x2ENDIFELSEPRINT“Norealroot!”ENDIFEND2bpa,2qa。程序框图:(参照课本17P)程序:(如右图所示)注:SQR()和ABS()是两个函数,分别用来求某个数的平方根和绝对值。即()xxSQR,(0)()-(0).xxxxxABS〖例2〗:编写程序,使得任意输入的3个整数按从大到小的顺序输出。算法分析:用a,b,c表示输入的3个整数;为了节约变量,把它们重新排列后,仍用a,b,c表示,并使a≥b≥c.具体操作步骤如下。第一步:输入3个整数a,b,c.第二步:将a与b比较,并把小者赋给b,大者赋给a.第三步:将a与c比较.并把小者赋给c,大者赋给a,此时a已是三者中最大的。第四步:将b与c比较,并把小者赋给c,大者赋给b,此时a,b,c已按从大到小的顺序排列好。第五步:按顺序输出a,b,c.程序框图:(参照课本19P)程序:(如右框图所示)〖补例〗:铁路部门托运行李的收费方法如下:y是收费额(单位:元),x是行李重量(单位:kg),当0<x≤20时,按0.35元/kg收费,当x>20kg时,20kg的部分按0.35元/kg,超出20kg的部分,则按0.65元/kg收费,请根据上述收费方法编写程序。分析:首先由题意得:0.35,020,0.35200.65(20),20.xxxxy该函数是个分段函数。需要对行李重量作出判断,因此,这个过程可以用算法中的条件结构来实现。程序:INPUT“请输入旅客行李的重量(kg)x=”;xIFx0ANDx=20THENy=0.35*xELSEy=0.35*20+0.65*(x-20)INPUT“a,b,c=”;a,b,cIFbaTHENt=aa=bb=tENDIFIFcaTHENt=aa=cc=tENDIFIFcbTHENt=bb=cc=tENDIFPRINTa,b,cENDENDIFPRINT“该旅客行李托运费为:”;yEND【课堂精练】1.20P练习2.(题略)分析:如果有两个或是两个以上的并列条件时,用“AND”把它们连接起来。2.20P练习1.(题略)参考答案:INPUT“请输入三个正数a,b,c=”;a,b,cIFa+bcANDa+cbANDb+caTHENPRINT“以下列三个数:”;a,b,c,“可以构成三角形。”ELSEPRINT“以下列三个数:”;a,b,c,“不可以构成三角形!”ENDIFEND(二)循环语句算法中的循环结构是由循环语句来实现的。对应于程序框图中的两种循环结构,一般程序设计语言中也有当型(WHILE型)和直到型(UNTIL型)两种语句结构。即WHILE语句和UNTIL语句。(1)WHILE语句的一般格式是:其中循环体是由计算机反复执行的一组语句构成的。WHLIE后面的“条件”是用于控制计算机执行循环体或跳出循环体的。当计算机遇到WHILE语句时,先判断条件的真假,如果条件符合,就执行WHILE与WEND之间的循环体;然后再检查上述条件,如果条件仍符合,再次执行循环体,这个过程反复进行,直到某一次条件不符合为止。这时,计算机将不执行循环体,直接跳到WEND语句后,接着执行WEND之后的语句。因此,当型循环有时也称为“前测试型”循环。其对应的程序结构框图为:(如上右图)(2)UNTIL语句的一般格式是:其对应的程序结构框图为:(如上右图)WHILE条件循环体WEND满足条件?循环体是否DO循环体LOOPUNTIL条件满足条件?循环体是否〖思考〗:直到型循环又称为“后测试型”循环,参照其直到型循环结构对应的程序框图,说说计算机是按怎样的顺序执行UNTIL语句的?(让学生模仿执行WHILE语句的表述)从UNTIL型循环结构分析,计算机执行该语句时,先执行一次循环体,然后进行条件的判断,如果条件不满足,继续返回执行循环体,然后再进行条件的判断,这个过程反复进行,直到某一次条件满足时,不再执行循环体,跳到LOOPUNTIL语句后执行其他语句,是先执行循环体后进行条件判断的循环语句。〖提问〗:通过对照,大家觉得WHILE型语句与UNTIL型语句之间有什么区别呢?(让学生表达自己的感受)区别:在WHILE语句中,是当条件满足时执行循环体,而在UNTIL语句中,是当条件不满足时执行循环体。【例题精析】〖例3〗:编写程序,计算自然数1+2+3+……+99+100的和。分析:这是一个累加问题。我们可以用WHILE型语句,也可以用UNTIL型语句。由此看来,解决问题的方法不是惟一的,当然程序的设计也是有多种的,只是程序简单与复杂的问题。程序:WHILE型:UNTIL型:〖例4〗:根据1.1.2中的图1.1-2,将程序框图转化为程序语句。分析:仔细观察,该程序框图中既有条件结构,又有循环结构。程序:i=1sum=0WHLIEi=100sum=sum+ii=i+1WENDPRINTsumENDi=1sum=0DOsum=sum+ii=i+1LOOPUNTILi100PRINTsumENDINPUT“n=”;nflag=1IFn2THENd=2WHILEd=n-1ANDflag=1IFnMODd=0THENflag=0ELSEd=d+1ENDIFWENDELSEIFflag=1THENPRINTn;“是质数。”ELSEPRINTn;“不是质数。”ENDIFENDIFEND〖思考〗:上述判定质数的算法是否还能有所改进?(让学生课后思考。)〖补例〗:某纺织厂1997年的生产总值为300万元,如果年生产增产率为5﹪,计算最早在哪一年生产总值超过400万元。分析:从1997年底开始,经过x年后生产总值为300×(1+5﹪)x,可将1997年生产总值赋给变量a,然后对其进行累乘,用n作为计数变量进行循环,直到a的值超过400万元为止。解:程序框图为:程序:【课堂精练】1.23P练习2.3(题略)参考答案:2.解:程序:X=1WHILEX<=20Y=X^2-3*X+5X=X+1PRINT“Y=”;YWENDEND开始a400?a=a*pa=300,p=1.05,n=1997n=n+1输出n结束否是a=300p=1.05n=1997DOa=a*pn=n+1LOOPUNTILa400PRINTnEND3.解:程序:INPUT“请输入正整数n=”;na=1i=1WHILEi=na=a*ii=i+1WENDPRINT“n!=”;aEND【课堂小结】本节课主要学习了条件语句和循环语句的结构、特点、作用以及用法,并懂得利用解决一些简单问题。条件语句使程序执行产生的分支,根据不同的条件执行不同的路线,使复杂问题简单化。有些复杂问题可用两层甚至多层循环解决。注意内外层的衔接,可以从循环体内转到循环体外,但不允许从循环体外转入循环体内。条件语句一般用在需要对条件进行判断的算法设计中,如判断一个数的正负,确定两个数的大小等问题,还有求分段函数的函数值等,往往要用条件语句,有时甚至要用到条件语句的嵌套。循环语句主要用来实现算法中的循环结构,在处理一些需要反复执行的运算任务。如累加求和,累乘求积等问题中常用到。【评价设计】1.P23习题1.2A组3、4P24习题1.2B组2.2.试设计一个生活中某个简单问题或是常见数学问题,并利用所学基本算法语句等知识编程。(要求所设计问题利用条件语句或循环语句)

1 / 7
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功