高中数学北师大必修三 循环语句
- 格式:ppt
- 大小:258.00 KB
- 文档页数:11
§4 几种基本语句4.2循环语句“从前有座山,山里有座庙,庙里有个老和尚讲故事,讲了什么呢?从前有座山,山里有座庙,庙里有个老和尚讲故事,讲了什么呢?从前有座山,山里有座庙,庙里有个老和尚讲故事,讲了什么呢?……”上文是一个有趣的循环套,这个循环套产生的原因是:一句话的结束后,下一句又用句子的开始文字来回答。
实际就是产生了一个步骤重复操作。
在算法中,有些比较复杂的算法的某些步骤中也会出现类似的情况,即算法的某些步骤重复操作的情况。
研习教材重难点研习点1:for语句1. for语句的形式及含义在算法中,循环结构也是一种基本结构.循环语句是表达循环结构的最常用语句.对预先知道循环次数的循环结构,我们用for语句.for语句的一般形式是:for〈循环变量〉:=〈初始值〉to〈终值〉dobegin〈循环体〉;end.(1)当程序执行时,遇到for语句,首先把初值赋给循环变量,记下终值和步长,并比较初值和终值,若初值没有超过终值,就开始执行for语句后面的语句,执行到end语句时,计算机让循环变量增加一个步长值,然后用增值后的循环变量值与终值比较,如果超过终值,就执行end后面的语句,否则执行for语句后面的语句.(2)循环变量是用于控制算法中循环次数的变量,起计算作用,它有初值和终值,是循环开始和结束时循环变量的值,步长是指循环变量每次增加的值,步长为1时可以省略不写,但为其他值时,必须写,不能省略.(3)循环体是指反复执行的一组语句,end的作用是控制结束一次循环,开始下一次新的循环.(4)for循环语句对应的基本框图如图所示.教材例3介绍了一个用循环结构算法,输出菲波拉契数列的前50项,使用for语句描述该算法.其数列为0,1,1,2,3,5,8,……其特征为后面的每一项均为前面相邻两项之和.[知识链接]菲波拉契数列13世纪初,欧洲最好的数学家是斐波拉契;他写了一本叫做《算盘书》的著作,是当时欧洲最好的数学书。
2.4.2循环语句一、教学目标:1、知识与技能:(1)正确理解循环语句的概念,并掌握循环语句的结构。
(2)会应用循环语句编写程序,能运用循环语句表达解决具体问题的过程。
2、过程与方法:经历对现实生活情境的探究,认识到应用计算机解决数学问题方便简捷,促进发展学生逻辑思维能力与表达能力,进一步体会算法思想。
3、情感态度与价值观:了解循环语句在程序中起判断转折作用,在解决实际问题中起决定作用。
深刻体会到条件语句在解决大量问题中起重要作用。
通过本课内容的学习,有益于我们养成严谨的数学思维以及正确处理问题的能力。
二、教学重点:两种循环语句的表示方法、结构和用法,用循环语句表示算法. 教学难点:理解循环语句的表示方法、结构和用法,会编写程序中的循环语句.三、教学方法:探究交流法。
四、教学过程(一)、问题情境1.问题1:设计计算135799⨯⨯⨯⨯⨯ 的一个算法,并画出流程图.(二)、学生活动解决问题1的算法是:对于以上算法过程,我们可以用循环语句来实现.(三)、建构数学 1.循环语句:循环语句一般有种:“For 循环”、“While 循环”和“Do 循环”(由于该种循环变化较多,教材中暂不介绍).(1)“For 循环”是在循环次数已知时使用的循环,其一般形式为: 例如:问题1中算法可用“For 循环”语句表示为:S1 S ←1S2 I ←3S3 S ←S ×IS4 I ←I+2S5 若I ≤99,则返回S3S6 输出S流程图: For I from “初值”to “终值”step “步长”… End for1S ←Print SEnd说明:①上面“For ”和“End For ”之间缩进的步骤称为循环体;②如果省略“Step 2”,默认的“步长”为1,即循环时,I 的值每次增加1(步长也可以为负,例如,以上“For 循环”第1行可写成:For I From 99 To 1 Step -2); ③“For 循环”是直到型循环结构,即先执行后判断.(2)“While 循环”的一般形式为:其中A 为判断执行循环的条件.例如:问题1中的算法可“While 循环”语句表示为:1S ←3I ←Print SEnd说明:①上面“While ”和“End While ”之间缩进的步骤称为循环体;②“While 循环”是当型循环结构,其特点是“前测试”,即先判断,后执行.若初始条件不成立,则一次也不执行循环体中的内容;③任何一种需要重复处理的问题都可以用这种前测试循环来实现.(四)、数学运用1.例题:例1.编写程序,计算自然数1+2+3+……+99+100的和。
高中数学学习材料鼎尚图文*整理制作3.2循环语句[读教材·填要点]1.For语句(1)格式:For循环变量=初始值To终值循环体Next(2)适用于预先知道循环次数的循环结构.2.Do Loop语句(1)格式:Do循环体Loop While条件为真(2)适用于预先不知道循环次数的循环结构.[小问题·大思维]1.For语句与Do Loop语句有什么区别?提示:两种循环语句的区别是For语句是先从循环变量的初值开始执行第一次循环体,直到循环变量取到其终值结束循环,适用于预先知道循环次数的循环结构;而Do Loop语句则是先判断条件,当条件为真时,执行循环体,否则结束循环,适用于那些预先不知道循环次数的循环结构.2.何时才能用到循环语句?提示:在问题处理中,经常要对某一步骤或若干步骤重复执行多次,即对不同的运算对象进行若干次的相同运算或处理,这种模式就对应程序设计中的循环结构,在算法中的循环结构就是由循环语句来实现的.[研一题][例1]画出计算12+32+52+…+9992的算法框图,并用For语句写出相应的程序.[自主解答]算法框图如下:S=0For i=1 To 999 step 2S=S+i*iNext输出S.[悟一法]1.For语句适合预先知道循环次数的循环结构,利用For语句表示循环结构时首先要确定循环变量的初始值和终值,然后确定循环体.2.在For循环语句中,我们默认循环变量每次的增量为1.如果需要考虑增量不为1的情况,需要使用参数Step.例如,“输出1到100内的所有奇数”的算法语句为:For i=1 To 100 Step 2.[通一类]1.用For语句设计算法,计算3+6+9+…+150的值.解:S=0For i=1 To 50S=S+3]Next输出S.[研一题][例2]设计一个求满足1+3+5+…+n>500的最小自然数n的算法框图,并用Do Loop语句描述这个算法.[自主解答]算法框图如下:Do Loop语句i=1S=0DoS=S+ii=i+2Loop While S<=500i=i-2输出i[悟一法]Do Loop语句,先执行一次循环体,若符合条件,继续执行循环体;当不符合条件时,跳出循环,执行Do Loop语句后的语句.[通一类]2.将求1×2×3×4×5×6×7×8×9×10的程序补充完整:a=10b=1Dob=b*a__(1)__Loop While __(2)__输出b解:a的初始值为10,故循环体中的值应该逆减,即a从10减小到1,循环体的条件应为a≥1.答案:a=a-1a≥1[研一题][例3]用循环语句表示求a1,a2,a3,a4的最大值的一个算法.[自主解答]输入a1,a2,a3,a4;M=a1,i=2DoIf a i>M ThenM=a ii=i+1Elsei=i+1End IfLoop While i<=4输出M.[悟一法]循环语句格式严格、条件准确,不能有半点马虎,一点不对,全题皆错.当循环语句中有嵌套条件语句时要先确定外层的循环语句,再逐步确定内层的条件语句.[通一类]3.给出以下10个数:4,10,70,33,95,74,29,17,60,30.要求将大于40的数找出来,画出求解该问题的算法框图,并写出程序.解:算法框图如图所示:i=1Do输入xIf x>40Then输出xEnd Ifi=i+1Loop While i<=10.用基本语句写一个算法,计算2+4+6+ (20)[解]法一:用语句描述为:i=2S=0DoS=S+ii=i+2Loop While i<=20输出S.法二:用语句描述为:S=0For i=2 To 20 Step 2S=S+iNext输出S.1.关于Do Loop循环语句叙述正确的是()A.总是执行循环体B.执行一次循环体C.满足条件时执行循环体D.遇到Do Loop就结束解析:对于Do Loop循环语句,先执行循环体,再根据条件是否成立来确定执行循环体.答案:C2.下列程序输出的结果是()i=1DoS=S*2+1i=i+1Loop While i<=4输出S.A.3B.7C.15D.19解析:由程序语句可知,该循环体共循环4次,分别为S=2×0+1=1,S=2×1+1=3,S=2×3+1=7,S=2×7+1=15.答案:C3.下列问题可以用循环语句设计程序的有()①求1+3+32+…+39的和;②比较a,b两个数的大小;③对于分段函数,要求输入自变量,输出函数值;④求平方值小于100的最大自然数.A.0个B.1个C.2个D.3个解析:①④可以用循环语句设计程序;②③要用条件语句设计程序.答案:C4.给出下列方程,若运行程序后输出的结果是1 320,则循环执行的“条件”应为________.i=12S=1DoS=S*ii=i-1Loop While条件输出S答案:i>=105.下面程序语句输出的S值是________.i=1S=0For i=1To 5S=S+iNext解析:S=1+2+3+4+5=15. 答案:156.已知函数f(x)=xx+1,实数a1=f(1),a2=f(a1),…,a n+1=f(a n),试写出用循环语句表示的求a8的算法,并画出框图.解:用语句描述为:A=1n=1For n=1To8A=A/(1+A)Next输出A.框图:一、选择题1.以下程序s=0For x=-1To11s=x*xNext输出s.该程序输出结果是()A.-1B.11C.100 D.121解析:由For语句的算法特点可知,s=11×11=121.2.下列程序的运行结果为( ) i =0 S =0 Doi =i +1 S =S +i Loop While S <=20 输出i A .5 B .6 C .7D .8解:由于0+1+2+3+4+5=15,0+1+2+3+4+5+6=21,∴i =6. 答案:B3.下列程序中的For 语句终止循环时,S 等于( ) S =1For M =1 To 13 Step 3S =S +M Next 输出S . A .1 B .5 C .10D .35解析:S =1+4+7+10+13=35. 答案:D4.下列算法的运行结果是( ) S =0 For i =1 To 5 S =S +1/i Next 输出S . A.13760 B.160 C.13060D .3解析:本算法是求1+12+13+14+15的和.答案:A5.下列算法运行后的输出结果为()i=1Doi=i+2S=3+2*iI=i+1Loop While i<8输出S.A.17B.19C.21 D.23解析:这是用Do Loop语句编写的算法,按Do Loop语句的运行程序可知最后一次执行循环体时S=3+2×(7+2)=21.答案:C二、填空题6.S=0For i=0 To 10 000 Step2S=S+iNext输出S则循环10次的结果是________.解析:算法程序实际是在计算S=0+2+4+…+10 000如果循环10次,则有S=0+2+4+6+8+…+18=90.答案:907.S=0For i=1 To 100S=S+i*iNext输出S则该语句的算法功能为______________.解析:S=12+22+ (1002)答案:计算12+22+…+1002的值8.如图,把求11×4+12×5+13×6+…+150×53的值的程序补充完整,则(1)____________;(2)____________.i=1S=0Do(1)i=i+1Loop While __(2)__输出S答案:(1)S=S+1/i*(i+3)(2)i<=50三、解答题9.据下列框图写出对应算法语句.解:S=0i=1DoS=S+ii=i+1Loop While i<=1 000输出S.10.猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个,第二天又将剩下的桃子吃掉一半,又多吃了一个,以后每天早上都吃前一天剩下的一半零一个,到第十天早上想吃时,见只剩一个桃子了,求第一天共摘了多少桃子?画出算法框图,并用语句描述.解:算法框图如图所示.程序如下:s=1For i=1 To 9 s=2*(s+1)Next输出S。
2.3.3循环语句【课程标准】经历将具体问题的程序框图转化为程序语句的过程,理解几种基本算法语句——输入语句、输出语句、赋值语句、条件语句、循环语句,进一步体会算法的基本思想【教学目标】1.理解、掌握循环语句;2.能运用循环语句表达解决具体问题的过程;3.培养学生逻辑思维能力与表达能力,进一步体会算法思想.【教学重点】循环语句的表示方法、结构和用法【教学难点】将具体问题的程序框图转化为程序语句的过程,当型循环和直到型循环的格式与逻辑的区别与联系.【教学过程】一、回顾知识1. 什么是循环结构?画出其程序框图.2. 引例:设计一个计算1+2+…+100的值的算法,并画出程序框图.分析:由程序框图转化为程序语句,引入循环语句.二、循环语句1. 当型(WHILE型)语句的一般格式:循环体WEND说明:当计算机遇到WHILE语句时,先判断条件的真假,如果条件符合,就执行WHILE 与WEND之间的循环体;然后再检查上述条件,如果条件仍符合,再次执行循环体,这个过程反复进行,直到某一次条件不符合为止.这时,计算机将不执行循环体,直接跳到WEND 语句后,接着执行WEND之后的语句.因此,当型循环有时也称为“前测试型”循环.2. 直到型(UNTIL型)语句的一般格式:循环体LOOP UNTIL 条件说明:当计算机遇到UNTIL语句时,先执行DO和LOOP UNTIL之间的循环体,然后判断条件是否成立,如果不成立,执行循环体.这个过程反复执行,直到某一次符合条件为止,这时不再执行循环体,跳出循环体执行LOOP UNTIL后面的语句. 因此,直到型循环有时也称为“后测试型”循环.3.当型循环与直到型循环的区别:①当型循环先判断后执行,直到型循环先执行后判断.②当型循环用WHILE语句,直到型循环用UNTIL语句.③对同一算法来说,当型循环和直到循环的条件互为反条件.三、知识应用〖例1〗:编写程序,计算自然数1+2+3+……+99+100的和。