1.2.3循环语句
整体设计
教学分析
通过前面的学习,学生学会了输入语句、输出语句、赋值语句和条件语句的基本用法,本节将介绍循环语句的用法.
程序中的循环语句与程序框图中的循环结构存在一一对应关系,这种对应关系对于学生理解循环语句的结构,进一步理解算法中的循环结构都是很有帮助的.我们可以给出循环语句的一般格式,让学生自己画出相应的程序框图,也可以给出程序框图,让学生写出算法语句,提高学生的应用能力.
三维目标
1.理解学习基本算法语句的意义.
2.学会循环语句的基本用法.
3.理解算法步骤、程序框图和算法语句的关系,学会算法语句的写法.
重点难点
教学重点:循环语句的基本用法.
教学难点:循环语句的写法.
课时安排1课时
教学过程
导入新课
思路1(情境导入)
一位同学不小心违反了学校纪律,班主任令其写检查,他写完后交给班主任,班主任看后说:“认识不深刻,拿回去重写,直到认识深刻为止”.这位同学一想,这不是一个循环结构吗?可惜我还没学循环语句,不然可以写一个算法语句输入计算机了.同学们,今天我们开始学习循环语句.
思路2(直接导入)
前面我们学习了程序框图的画法,为了让计算机能够理解算法步骤、程序框图,上一节我们学习了输入语句、输出语句、赋值语句和条件语句,今天我们开始学习循环语句.
推进新课
新知探究
提出问题
(1)试用程序框图表示循环结构.
(2)指出循环语句的格式及功能.
(3)指出两种循环语句的相同点与不同点.
(4)揭示程序中的循环语句与程序框图中的条件结构存在一一对应关系.
讨论结果:
(1)循环结构
循环结构有两种形式:当型循环结构和直到型循环结构.
1°当型循环结构,如图(1)所示
2°直到型循环结构,如图(2)所示,
(1)当型循环结构
(2)直到型循环结构
(2)循环语句
1°当型循环语句
当型(WHILE型)语句的一般格式为:
WHILE
条件
循环体
WEND
功能:计算机执行此程序时,遇到WHILE语句,先判断条件是否成立,如果成立,则执行WHILE和WEND之间的循环体;然后返回到WHILE语句再判断上述条件是否成立,如果成立,再执行循环体,这个过程反复执行,直到一次返回到WHILE语句判断上述条件不成立为止,这时不再执行循环体,而是跳到WEND语句后,执行WEND后面的语句.因此当型循环又称“前测试型”循环,也就是我们经常讲的“先测试后执行”“先判断后循环”.
2°直到型循环语句
直到型(UNTIL型)语句的一般格式为:
DO
循环体
LOOP
UNTIL
条件
功能:计算机执行UNTIL语句时,先执行DO和LOOP
UNTIL之间的循环体,然后判断“LOOP
UNTIL”后面的条件是否成立,如果条件不成立,返回DO语句处重新执行循环体.这个过程反复执行,直到一次判断“LOOP
UNTIL”后面的条件成立为止,这时不再返回执行循环体,而是跳出循环体执行“LOOP
UNTIL条件”下面的语句.
因此直到型循环又称“后测试型”循环,也就是我们经常讲的“先执行后测试”“先循环后判断”.
(3)相同点:都是反复执行循环体语句.
不同点:当型循环语句是先判断后循环,直到型循环语句是先循环后判断.
(4)下面为循环语句与程序框图中的条件结构的一一对应关系.
1°直到型循环结构:
2°当型循环结构:
应用示例
思路1
例1
修改前面编写过的求函数y=x3+3x2-24x+30的值的程序,连续输入11个自变量的取值,输出相应的函数值.
算法分析:与前面不同的是,本例要求连续输入11个自变量的取值.并输出相应的函数值,先写出解决本例的算法步骤:
第一步,输入自变量x的值.
第二步,计算y=x3+3x2-24x+30.
第三步,输出y.
第四步,记录输入次数.
第五步,判断输入的次数是否大于11.若是,则结束算法;否则,返回第一步.
显然,可以用计数变量n(1≤n≤11)记录次数,通过循环结构来实现算法.
程序框图如下图:
程序:
n=1
DO
INPUT
x
y=x^3+3
x^2-24
x+30
PRINT
y
n=n+1
LOOP
UNTIL
n>11
END
例2
教材中的用“二分法”求方程x2-2=0(x>0)的近似解的程序框图(见教材图1.120)包含了顺序结构、条件结构和循环结构.下面,我们把这个程序框图转化为相应的程序.
解:程序为:
INPUT
“a,b,d=”;a,b,d
DO
m=(a+b)/2
g=a^2-2
f=m^2-2
IF
g
f<0
THEN
b=m
ELSE
a=m
END
IF
LOOP
UNTIL
ABS(a-b)<d
OR
f=0
PRINT
m
END
点评:ABS()是一个函数,用来求某个数的绝对值,即ABS(x)=|x|.
例3
设计一个计算1×3×5×7×…×99的算法,编写算法程序.
解:算法如下:
第一步,s=1.
第二步,i=3.
第三步,s=s×i.
第四步,i=i+2.
第五步,如果i≤99,那么转到第三步.
第六步,输出s.
程序如下:(“WHILE型”循环语句)
s=1
i=3
WHILE
i<=99
s=s
i
i=i+2
WEND
PRINT
s
END
点评:前面我们已经学过“求和”问题,这是一个“求积”问题,这两个问题都是典型的算法问题,注意它们的联系与区别.
例4
编写一个程序,求1!+2!+…+10!的值(其中n!=1×2×3×…×n).
分析:这个问题可以用“WHILE+
WHILE”循环嵌套语句格式来实现.
程序结构要做到如下步骤:
①处理“n!”的值;(注:处理n!的值的变量是一个内循环变量)
②累加“n!”的值.(注:累加n!的值的变量是一个外循环变量)
显然,通过10次循环可分别求出1!、2!、…、10!的值,并同时累加起来,
可求得S的值.而求T=n!,又可以用一个循环(内循环)来实现.
解:程序为:
s=0
i=1
WHILE
i<=10
j=1
t=1
WHILE
j<=i
t=t
j
j=j+1
WEND
s=s+t
i=i+1
WEND
PRINT
s
END
思考:上面程序中哪个变量是内循环变量,哪个变量是外循环变量?
解答:内循环变量:j,t.外循环变量:s,i.
上面的程序是一个的“WHILE+WHILE”型循环嵌套语句格式.这是一个比较好想的方法,但实际上对于求n!,我们也可以根据求出的(n-1)!乘上n即可得到,而无需重新从1再累乘到n.
程序可改为:
s=0
i=1
j=1
WHILE
i<=10
j=j
i
s=s+j
i=i+1
WEND
PRINT
s
END
显然第二个程序的效率要比第一个高得多.第一程序要进行1+2+…+10=55次循环,而第二程序进行10次循环.如题目中求的是1!+2!+…+1
000!,则两个程序的效率区别会更明显.
点评:解决具体的构造循环语句的算法问题,要尽可能地少引入循环变量,否则较多的变量会使得设计程序比较麻烦,并且较多的变量会使得计算机占用大量的系统资源,致使系统缓慢.另外,也尽可能使得循环嵌套的层数少,否则也浪费计算机的系统资源.
变式训练
某种蛋白质是由四种氨基酸组合而成.这四种氨基酸的相对分子质量分别是57,71,97,101.实验测定蛋白质的相对分子质量为800.问这种蛋白质的组成有几种可能?
分析:该问题即求如下不定方程的整数解:设四种氨基酸在蛋白质的组成中分别各有x,y,z,w个.则由题意可得57x+71y+97z+101w=800,(x,y,z,w是非负整数)
这里0≤x≤14,0≤y≤11,0≤z≤8,0≤w≤7,利用穷取法,考虑一切可能出现的情况.运用多层循环嵌套处理即可.
解:编写程序如下:
w=0
WHILE
w<=7
z=0
WHILE
z<=8
y=0
WHILE
y<=11
x=0
WHILE
x<=14
IF
57
x+71
y+97
z+101
w=800
THEN
PRINT
x,y,z,w
END
IF
x=x+1
WEND
y=y+1
WEND
z=z+1
WEND
w=w+1
WEND
END
知能训练
设计算法求的值.要求画出程序框图,写出用基本语句编写的程序.
解:这是一个累加求和问题,共99项相加,可设计一个计数变量,一个累加变量,用循环结构实现这一算法.程序框图如下图所示:
程序如下:
s=0
i=1
Do
s=s+1/(i
(i+1))
i=i+1
LOOP
UNTIL
i>99
PRINT
s
END
拓展提升
青年歌手电视大赛共有10名选手参加,并请了12名评委,在计算每位选手的平均分数时,为了避免个别评委所给的极端分数的影响,必须去掉一个最高分和一个最低分后再求平均分.试设计一个算法解决该问题,要求画出程序框图,写出程序(假定分数采用10分制,即每位选手的分数最高分为10分,最低分为0分).
解:由于共有12位评委,所以每位选手会有12个分数,我们可以用循环语句来完成这12个分数的输入,同时设计累加变量求出这12个分数的和,本问题的关键在于从这12个输入分数中找出最大数与最小数,以便从总分中减去这两个数.由于每位选手的分数都介于0分和10分之间,我们可以先假设其中的最大数为0,最小数为10,然后每次输入一个评委的分数,就进行一次比较,若输入的数大于0,就将之代替最大数,若输入的数小于10,就用它代替最小数,依次下去,就能找出这12个数中的最大数与最小数,循环结束后,从总和中减去最大数与最小数,再除以10,就得到该选手最后的平均分.
程序框图如右图:
程序如下:s=0
i=1
max=0
min=10
DO
INPUT
x
s=s+x
IF
max<=x
THEN
max=x
END
IF
IF
min>=x
THEN
min=x
END
IF
i=i+1
LOOP
UNTIL
i>12
s1=s-max-min
a=s1/10
PRINT
a
END
课堂小结
(1)学会两种循环语句的应用.
(2)熟练应用两种循环语句编写计算机程序,巩固算法应用.
作业
习题1.2A组3.
设计感想
本节的导入符合学生心理要求,能够激发学生的学习兴趣.算法像一个故事,循环语句就是故事的高潮,它以前面的内容为基础,是前面内容的总结和发展.本节选用了大量的精彩例题为故事高潮的到来作好了铺垫,精彩的点评把本节推向了高潮,所以本节教案值得期待.
备课资料
备用习题
1.读下面两个程序:
甲:i=1
S=0
WHILE
i<=1
000
S=S+i
i=i+1
WEND
PRINT
S
END
乙:i=1
000
S=0
DO
S=S+i
i=i-1
LOOP
UNTIL
i<1
PRINT
S
END
对甲、乙两程序和输出结果判断正确的是(
)
A.程序不同,结果不同
B.程序不同,结果相同
C.程序相同,结果不同
D.程序相同,结果相同
答案:B
2.程序:
x=1
y=1
WHILE
x<=4
Z=0
WHILE
y<=x+2
Z=Z+1
y=y+1
WEND
PRINT
Z
x=x+1
y=1
WEND
END
运行后输出的结果为(
)
A.3
4
5
6
B.4
5
6
7
C.5
6
7
8
D.6
7
8
9
答案:A1.2.3循环语句
课题:1.2.3
循环语句
第
个教案
课型:
新授课
年
月
日
教学目标
1.知识与技能(1)正确理解循环语句的概念,并掌握其结构。(2)会应用条件语句和循环语句编写程序。
2.过程与方法:经历对现实生活情境的探究,认识到应用计算机解决数学问题方便简捷,促进发展学生逻辑思维能力
3.情感、态度与价值观:
深刻体会到循环语句在解决大量重复问题中起重要作用。减少大量繁琐的计算。通过本小节内容的学习,有益于我们养成严谨的数学思维以及正确处理问题的能力。
教学重点
条件语句和循环语句的步骤、结构及功能
教学难点
会编写程序中的条件语句和循环语句。
教学方法
教学过程:
批
注
活动一:创设情景,揭示课题
(5分钟)问题1:试求自然数1+2+3+……+99+100的和。显然大家都能准确地口算出它的答案:5050。而能不能将这项计算工作交给计算机来完成呢?而要编程,以我们前面所学的输入、输出语句和赋值语句还不能满足“我们日益增长的物质需要”,因此,还需要进一步学习基本算法语句中的另外一种:循环语句(板出课题)活动二:步入新知,师生交流(20分钟)
算法中的循环结构是由循环语句来实现的。对应于程序框图中的两种循环结构,一般程序设计语言中也有当型(WHILE型)和直到型(UNTIL型)两种语句结构。即WHILE语句和UNTIL语句。(1)WHILE语句的一般格式是:其中循环体是由计算机反复执行的一组语句构成的。WHLIE后面的“条件”是用于控制计算机执行循环体或跳出循环体的。当计算机遇到WHILE语句时,先判断条件的真假,如果条件符合,就执行WHILE与WEND之间的循环体;然后再检查上述条件,如果条件仍符合,再次执行循环体,这个过程反复进行,直到某一次条件不符合为止。这时,计算机将不执行循环体,直接跳到WEND语句后,接着执行WEND之后的语句。因此,当型循环有时也称为“前测试型”循环。其对应的程序结构框图为:(如上右图)(2)UNTIL语句的一般格式是:其对应的程序结构框图为:(如上右图)〖思考〗:直到型循环又称为“后测试型”循环,参照其直到型循环结构对应的程序框图,说说计算机是按怎样的顺序执行UNTIL语句的?(让学生模仿执行WHILE语句的表述)
从UNTIL型循环结构分析,计算机执行该语句时,先执行一次循环体,然后进行条件的判断,如果条件不满足,继续返回执行循环体,然后再进行条件的判断,这个过程反复进行,直到某一次条件满足时,不再执行循环体,跳到LOOP
UNTIL语句后执行其他语句,是先执行循环体后进行条件判断的循环语句。〖提问〗:通过对照,大家觉得WHILE型语句与UNTIL型语句之间有什么区别呢?(让学生表达自己的感受)区别:在WHILE语句中,是当条件满足时执行循环体,而在UNTIL语句中,是当条件不满足时执行循环体活动三:合作学习,探究新知学(18分钟)〖例3〗:编写程序,计算自然数1+2+3+……+99+100的和。分析:这是一个累加问题。我们可以用WHILE型语句,也可以用UNTIL型语句。由此看来,解决问题的方法不是惟一的,当然程序的设计也是有多种的,只是程序简单与复杂的问题。程序:
UNTIL型:
WHILE型:
〖例4〗:根据1.1.2中的图1.1-2,将程序框图转化为程序语句。分析:仔细观察,该程序框图中既有条件结构,又有循环结构。程序:〖思考〗:上述判定质数的算法是否还能有所改进?(让学生课后思考。)〖补例〗:某纺织厂1997年的生产总值为300万元,如果年生产增产率为5﹪,计算最早在哪一年生产总值超过400万元。分析:从1997年底开始,经过x年后生产总值为300×(1+5﹪)x,可将1997年生产总值赋给变量a,然后对其进行累乘,用n作为计数变量进行循环,直到a的值超过400万元为止。解:程序框图为:
程序:【课堂精练】1.
练习
2.
3(题略)参考答案:2.解:程序:
X=1WHILE
X<=20Y=X^2-3
X+5X=X+1PRINT
“Y=”;Y
WENDEND3.解:程序:
INPUT
“请输入正整数n=”;na=1i=1WHILE
i<=na=a
ii=i+1WENDPRINT
“n!=”
;aEND活动四:归纳整理,提高认识(2分钟)本节课主要学习了条件语句和循环语句的结构、特点、作用以及用法,并懂得利用解决一些简单问题。条件语句使程序执行产生的分支,根据不同的条件执行不同的路线,使复杂问题简单化。有些复杂问题可用两层甚至多层循环解决。注意内外层的衔接,可以从循环体内转到循环体外,但不允许从循环体外转入循环体内。条件语句一般用在需要对条件进行判断的算法设计中,如判断一个数的正负,确定两个数的大小等问题,还有求分段函数的函数值等,往往要用条件语句,有时甚至要用到条件语句的嵌套。循环语句主要用来实现算法中的循环结构,在处理一些需要反复执行的运算任务。如累加求和,累乘求积等问题中常用到。活动五:作业布置1.
P23
习题1.2
A组
3、4P24
习题1.2
B组
2.2.试设计一个生活中某个简单问题或是常见数学问题,并利用所学基本算法语句等知识编程。(要求所设计问题利用条件语句或循环语句)板书设计:
教学后记
满足条件?
循环体
是
否
WHILE
条件
循环体
WEND
满足条件?
循环体
是
否
DO
循环体
LOOP
UNTIL
条件
i=1
sum=0
WHLIE
i<=100
sum=sum+i
i=i+1
WEND
PRINT
sum
END
i=1
sum=0
DO
sum=sum+i
i=i+1
LOOP
UNTIL
i>100
PRINT
sum
END
INPUT
“n=”;n
flag=1
IF
n>2
THEN
d=2
WHILE
d<=n-1
AND
flag=1
IF
n
MOD
d=0
THEN
flag=0
ELSE
d=d+1
END
IF
WEND
ELSE
IF
flag=1
THEN
PRINT
n;“是质数。”
ELSE
PRINT
n;“不是质数。”
END
IF
END
IF
END
开始
a>400
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
a>400
PRINT
n
END1.2.3循环语句
一,教学内容分析:
《循环结构》是选自人民教育出版社,普通高中课程标准实验教科书数学A版必修3第一章第二小节,课时安排6课时,本课为第4课时。通过本节课的学习,既是对算法概念的进一步巩固和深化,又为后面进一步学习基本算法语句打下坚实的基础,循环结构是程序框图的一种基本逻辑结构通过模仿、操作、探索,学习设计循环结构程序框图,表达解决问题的过程,理解循环结构的意义,体会循环结构的作用,因此本节课在教材中起到了承上起下的作用。
二,学生情况分析
1.
学生在学习本课以前,已经学习了算法的概念、顺序结构、条件结构及简单的赋值问题,因此,学生具备类比简单d=n的赋值得出Sum=Sum+n的结论的基础。
2.
学生具备一定的自学能力,思维活跃,对程序框图与算法的基本逻辑结构这一课程兴趣很高;
3.
高二学生形象思维、感性认识较强,理性思维、抽象认识能力还很薄弱,因此教学中宜选择学生熟悉的,易懂的实例引入。
三,教学目标
根据上面对教材的分析,并结合学生的认知水平合思维特点,确定本节课的教学目标:
1.知识与技能
①.使学生正确理解循环语句的概念,把握循环结构的三要素:循环的初始状态、循环体、循环的终止条件。
②.通过具体实例的学习掌握循环语句结构,使学生能把循环结构程序框图转化为程序语言。
2、过程与方法
通过由实例对循环结构的探究与应用过程,培养学生的观察类比,归纳抽象能力;参与运用算法思想解决问题的过程,逐步形成算法分析,算法设计,算法表示,程序编写到算法实现的程序化算法思想;培养学生严密精确的逻辑思维能力;掌握循环结构的一般意义及应用方法;培养由特殊到一般,再到特殊,及具体,抽象,具体的螺旋上升式的认识事物的能力并发现解决问题的方法。
3、情感、态度与价值观
①.通过在计算机上编写程序,培养学生在面对问题时养成分析的习惯,感受计算机在大量繁琐的计算中所起的作用。
②.通过师生、生生互动的活动过程,培养学生主动探究、勇于发现的科学精神,提高数学学习的兴趣,体验成功的喜悦。
四.教学的重点与难点
教学重点:两种循环语句的表示方法、结构和用法,用循环语句表示算法。
教学难点:理解循环语句的表示方法、结构和用法,会编写程序中的循环语句。
五.教学方法和学生学法
(1)教法
探究启发式教学法
(2)学法
探索发现式学习法
(3)教学手段
采用多媒体辅助教学,注重学生的多感官参与和多种心理能力的投入,从而促进学生全方面的发展。
六.教学过程
(一)、问题情境
问题一:你能说出下图中两种基本循环结构的类型并说出其特点吗?
【设计意图】从学生们熟悉的问题做入手,在复习循环结构的“当型”和“直到型”这两种循环结构同时为学习新知识做好铺垫。
问题2:对于程序框图中两种循环结构,一般程序设计语言中又是怎样来描述的呢?
(二)、讲解新课:
算法中的循环结构是由循环语句来实现的。对应于程序框图中的两种循环结构,一般程序设计语言中也有当型(WHILE型)和直到型(UNTIL型)两种语句结构。
【学生思考讨论】参照其直到型循环结构对应的程序框图,说说计算机是按怎样的顺序执行直到型循环语句的?
【学生回答】从直到型循环结构分析,计算机执行该语句时,先执行一次循环体,然后进行条件的判断,如果条件不满足,继续返回执行循环体,然后再进行条件的判断,这个过程反复进行,直到某一次条件满足时,不再执行循环体,跳到LOOP
UNTIL语句后执行其他语句,是先执行循环体后进行条件判断的循环语句。
例如:请利用直到型循环语句设计求1+2+3+…+100的程序
【设计意图】使学生在具体实例中掌握算法思想,通过步骤分析、归纳、整理、使学生经历由特殊到一般、由具象到抽象的思维过程,培养学生的归纳、概括能力。
【师生互动】学生探讨思考,算法思想渗透,教师归纳整理,给出语句结构激发学生兴趣,引导学生猜想,思考、观察、归纳,教师诱导、点评。
2、
【学生思考讨论】参照其当型循环结构对应的程序框图,说说计算机是按怎样的顺序执行当型循环语句的?
【学生回答】当计算机遇到当型循环语句时,先判断条件的真假,如果条件符合,就执行WHILE与WEND之间的循环体;然后再检查上述条件,如果条件仍符合,再次执行循环体,这个过程反复进行,直到某一次条件不符合为止。这时,计算机将不执行循环体,直接跳到WEND语句后,接着执行WEND之后的语句。
【提出问题】你能利用当型循环语句设计求1+2+3+…+100的程序吗?
【设计意图】相同的问题,不同的要求,使学生在解答问题的同时体会两种循环语句的区别。
【师生互动】学生思考讨论,教师归纳整理。
【提出问题】:通过对照,大家觉得当型循环语句与直到型循环型语句之间有什么区别呢?(让学生表达自己的感受)
【设计意图】进一步让学生体会和归纳两种循环语句各自的特点。加强学生对于概念的理解,培养学生独立解决问题的能力,使学生深入了解课堂内容。
【区别】在当型循环语句中,是当条件满足时执行循环体,而在直到型循环语句中,是当条件不满足时执行循环体。
(三)、例题精析
例1.设计一个程序,求1 +2
+
3
+4
+
5
+…
+100 的值。
【设计意图】在学生们已经掌握累加的基础之上,通过本题进一步体会算法思想和循环语句的特点。使学生再次经历由特殊到一般、由具象到抽象的思维过程,培养学生的归纳、概括能力。
【师生互动】通过学生思考、解答交流,教师巡视,注意个别指导,发现普遍性
问题,应及时提到全体学生面前供大家讨论,最后学生口述,教师板书。
【解答过程】
i=1
S=1
DO
S
=
S+
i^2
i
=
i
+
1
LOOP
UNTIL
i>100
PRINT
S
END
【学生思考】你能用另外一种循环语句解答本题吗?
(四)、课堂精练
1.P32
练习
1,2(题略)
(五)、课堂小结
本节课主要学习了循环语句的结构、特点、作用以及用法,并懂得利用解决一些简单问题。循环语句主要用来实现算法中的循环结构,在处理一些需要反复执行的运算任务。如累加求和,累乘求积等问题中常用到。
(六)、课后作业
1.
必做:课本P33页,习题A组第3题
2.选做:试设计一个生活中某个简单问题或是常见数学问题,并利用所学基本算法语句等知识编程。(要求所设计问题利用循环语句)
(七)、板书设计
直到型循环结构
当型循环结构
满足条件?
循环体
做循环直到条件满足
当条件满足时做循环
循环结构
否
是
是
循环体
满足条件?
循环体
满足条件?
否
直到型循环结构框图
直到型循环语句
满足条件jian件jian件?
循环体
Y
N
DO
LOOP
UNTIL
条件
循环体
开始
i=1
S=0
S=S+i
i=i+1
i
>100
输出
S
结束
否
是
i=1
S=0
DO
S
=
S
+
i
i
=
i
+
1
LOOP
UNTIL
i>100
PRINT
S
END
程序框图
程序语言
WHILE
条件
当型循环语句
当型循环结构框图
循环体
循环体
循环体
满足条件?
满足条件?
是
WEND
否
循环结构
开始
结束
输出S
循环条件
i=1
S=0
PRINT
S
END
WHILE
i<=100
S=S+i
i=i+1
WEND
循环体
程序框图
程序语言
是
否
§1.2.3循环语句
一:直到型循环语句
DO
循环体
LOOP
UNTIL
条件
二:当型循环语句
WHILE
条件
循环体
WEND
三:例题分析
例1.设计求1+2+3+…+100的程序
例2.设计一个程序,求1 +2
+
3
+4
+
5
+…
+100 的值
四:本节小结1.2.3循环语句
(
)教学目标:
(
)知识与技能
(
)(1)正确理解循环语句的概念,并掌握其结构。
(
)(2)会应用条件语句和循环语句编写程序。
(
)过程与方法
(
)经历对现实生活情境的探究,认识到应用计算机解决数学问题方便简捷,促进发展学生逻辑思维能力
(
)重点与难点
(
)重点:条件语句和循环语句的步骤、结构及功能。
(
)难点:会编写程序中的条件语句和循环语句。
(
)教学过程
(
)问题提出
(
)1.两种条件语句的一般格式分别是什么?
(
)2.对于顺序结构、条件结构的算法或程序框图,我们可以利用输入语句、输出语句、赋值语句和条件语句写出其计算机程序.对于循环结构的算法或程序框图,要转化为计算机能够理解的算法语言,我们必须进一步学习循环语句.
(
)知识探究(一):直到型循环语句
(
)思考1:直到型循环结构的程序框图是什么?
(
)思考2:该循环结构对应的循环语句的一般格式设定为:
(
)
你能说明计算机在执行上述语句时是怎样工作的吗?
(
)先执行一次DO和UNTIL之间的循环体,再对UNTIL后的条件进行判断.如果条件不符合,则继续执行循环体;然后再检查上述条件,如果条件仍不符合,则再次执行循环体,直到条件符合为止.这时,计算机将不执行循环体,而执行UNTIL语句之后的语句.
(
)思考3:计算1+2+3+…+100的值有如下算法:
(
)第一步,令i=1,S=0.
(
)第二步,计算S+i,仍用S表示.
(
)第三步,计算i+1,仍用i表示.
(
)第四步,判断i>100是否成立.若是,则输出S,结束算法;否则,返回第二步.
你能利用UNTIL语句写出这个算法对应的程序吗?
思考4:在下面的程序运行中,计算机输出的结果是多少?
-1
知识探究(二):当型循环语句
思考1:当型循环结构的程序框图是什么?
思考2:该循环结构对应的循环语句的一般格式设定为:
你能说明计算机在执行上述语句时是怎样工作的吗?
先对条件进行判断,如果条件符合,则执行WHILE和WEND之间的循环体;然后再检查上述条件,如果条件仍符合,则再次执行循环体,直到某一次条件不符合为止.这时,计算机将不执行循环体,而执行WEND语句之后的语句.
思考3:计算1+2+3+…+100的值又有如下算法:
第一步,令i=1,S=0.
第二步,若i≤100成立,则执行第三步;否则,输出S,结束算法.
第三步,S=S+i.
第四步,i=i+1,返回第二步.
你能利用WHILE语句写出这个算法对应的程序吗?
思考4:阅读下面的程序,你能说明它是一个什么问题的算法吗?
求满足x2<1000的所有正整数x的值.
理论迁移
例1
已知函数y=x3+3x2-24x+30,写出连续输入自变量的11个取值,分别输出相应的函数值的程序.
算法分析:
第一步,输入自变量x的值.
第二步,计算y=x3+3x2-24x+30.
第三步,输出y.
第四步,记录输入次数.
第五步,判断输入的次数是否大于11.若是,则结束算法;否则,返回第一步.
例2
将用“二分法”求方程
的近似解的程序框图转化为相应的程序.
课堂练习:
1.教材P32面1、2题
2.
下边程序运行后输出的结果为(D)
A.50
B.25
C.5
D.0
3.
下边程序执行后输出的结果为(D)
A.-1
B.0
C.1
D.2
4.山东执行下边的程序框图,若p=0.8,则输出的n=___4___
.
5.阅读图4的程序框图,若输入则输出
12
,
3
。(注:框图中的赋值符号“=”也可以写成“”或“”)
小结作业
1.两种循环语句源于两种循环结构,直到型循环语句先执行循环体,再判断条件;当型循环语句先判断条件,再执行循环体.
2.直到型循环语句在条件不符合时再执行循环体,当型循环语句在条件符合时再执行循环体.课题
循环语句
授课时间
课型
新授
二次修改意见
教学目标
知识与技能
1.理解学习基本算法语句的意义.
过程与方法
2.学会循环语句的基本用法.
情感态度价值观
3.理解算法步骤、程序框图和算法语句的关系,学会算法语句的写法.
教材分析
重难点
教学重点:循环语句的基本用法.教学难点:循环语句的写法.
教学设想
教法
类比归纳
学法
自学
教具
课堂设计
目标展示前面我们学习了程序框图的画法,为了让计算机能够理解算法步骤、程序框图,上一节我们学习了输入语句、输出语句、赋值语句和条件语句,今天我们开始学习循环语句.预习检测(1)试用程序框图表示循环结构.(2)指出循环语句的格式及功能.(3)指出两种循环语句的相同点与不同点.(4)揭示程序中的循环语句与程序框图中的条件结构存在一一对应关系.质疑探究(1)循环结构
循环结构有两种形式:当型循环结构和直到型循环结构.
1°当型循环结构,如图(1)所示
2°直到型循环结构,如图(2)所示,
(1)当型循环结构
(2)直到型循环结构(2)循环语句
1°当型循环语句
当型(WHILE型)语句的一般格式为:
WHILE
条件
循环体
WEND精讲点拨例1
修改前面编写过的求函数y=x3+3x2-24x+30的值的程序,连续输入11个自变量的取值,输出相应的函数值.算法分析:与前面不同的是,本例要求连续输入11个自变量的取值.并输出相应的函数值,先写出解决本例的算法步骤:第一步,输入自变量x的值.第二步,计算y=x3+3x2-24x+30.第三步,输出y.第四步,记录输入次数.第五步,判断输入的次数是否大于11.若是,则结束算法;否则,返回第一步.显然,可以用计数变量n(1≤n≤11)记录次数,通过循环结构来实现算法.程序框图如下图:五
当堂检测1.读下面两个程序:甲:i=1S=0WHILE
i<=1
000S=S+ii=i+1WENDPRINT
SEND乙:i=1
000S=0DOS=S+ii=i-1LOOP
UNTIL
i<1PRINT
SEND
对甲、乙两程序和输出结果判断正确的是(
)A.程序不同,结果不同
B.程序不同,结果相同C.程序相同,结果不同
D.程序相同,结果相同答案:B2.程序:x=1y=1WHILE
x<=4Z=0WHILE
y<=x+2Z=Z+1y=y+1WENDPRINT
Zx=x+1y=1WENDEND运行后输出的结果为(
)A.3
4
5
6
B.4
5
6
7C.5
6
7
8
D.6
7
8
9答案:A六、作业布置
教材33页4-------5题
板书设计
一
循环语句概念二
例题1
教学反思
三
例题2四
小结