资料摘要
1.2.2条件语句1.2.3循环语句1.问题导航(1)条件语句的格式是怎样的?(2)程序中的条件语句与程序框图中的条件结构有什么关系?(3)循环语句可细分为哪两类?格式分别是怎样的?它们有什么相同点和不同点?(4)程序中的循环语句与程序框图中的循环结构有什么关系?2.例题导读通过对例5的学习,学会条
- 资料类型:教学教案文档
- 所属课文:1.2.3 循环语句
- 支持正文预览,并提供同课文课件入口
- 浏览次数
- 16
- 下载次数
- 0
- 更新时间
- 2018-07-05 09:56:00
- 来源学校
- 学校:天祝藏族自治县第一中学
1.2.3 循环语句评课稿
未知
摘要:暂无摘要
关键词:1.2.3 循环语句评课稿
正文
1.2.2
条件语句
1.2.3
循环语句
1.问题导航
(1)条件语句的格式是怎样的?
(2)程序中的条件语句与程序框图中的条件结构有什么关系?
(3)循环语句可细分为哪两类?格式分别是怎样的?它们有什么相同点和不同点?
(4)程序中的循环语句与程序框图中的循环结构有什么关系?
2.例题导读
通过对例5的学习,学会条件语句的基本结构;
通过对例6的学习,学会如何将程序框图转化为程序;
通过对例7的学习,学会如何编写排序的程序;
通过对例8的学习,学会循环语句的基本结构.
1.条件语句的概念
处理条件结构的算法语句,叫做条件语句.
2.条件语句的格式
IF
条件
THEN(1)IF-THEN格式
形式:
语句体
END IF(2)IF-THEN-ELSE格式
形式:
IF
条件
THEN
语句体1ELSE
语句体2END IF3.功能
(1)IF-THEN格式:首先对IF后的条件进行判断,如果(IF)条件符合,那么(THEN)执行语句体,否则执行END IF之后的语句.
(2)IF-THEN-ELSE格式:首先对IF后的条件进行判断,如果(IF)条件符合,那么(THEN)执行语句体1;否则(ELSE)执行语句体2.
4.循环语句的格式、功能及程序框图的对应关系
名称
直到型
当型
DO 格式
循环体
LOOP_UNTIL
条件
先执行一次DO和UNTIL之间的循环体,再判断UNTIL后的条件是否符合,如果不符合,继续执行循环体,然后再检查上述条件,如果仍不符合,再次执行循环体,直到条件符合时为止.这时不再执行循环体,跳出循环体执行UNTIL语句后面的语句
WHILE
条件
循环体
WEND 先判断条件的真假,如果条件符合,则执行WHILE和WEND之间的循环体,然后再检查上述条件,如果条件仍符合,再次执行循环体,这个过程反复进行,直到某一次条件不符合为止,这时不再执行循环体,跳出循环体,执行WEND后面的语句
功能
对应程序框图
1.判断下列各题.(对的打“√”,错的打“×”) (1)算法中的循环结构只能由WHILE语句来实现;(
) (2)一般程序设计语言中有当型和直到型两种循环语句结构;(
) (3)算法中的循环结构由循环语句来实现.(
) 解析:循环结构包含两种基本类型:WHILE语句和UNTIL语句,故(1)×;(2)(3)都对.
答案:(1)×
(2)√
(3)√
2.求下列函数的函数值的算法中需要用到条件语句的函数为(
) A.f(x)=x2-1 B.f(x)=x3-1 2x+1(x≤2.5)C.f(x)=2
x-1(x>2.5)
D.f(x)=2x
解析:选C.A、B、D只需要用顺序结构就能描述算法.C需要对自变量进行判断,要用条件语句,故选C.
3.当x=3时,下面算法的输出结果是________.
INPUT
x IF
x<10
THEN
y=2*x ELSE ∧
y=x2 END IF PRINT
y END 解析:由x=3<10,则执行y=2×3=6.
答案:6 4.求出下面语句的输出结果.
i=4 S=0 WHILE
i<6
i=i+2 ∧S=S+i2 WEND PRINT
S END 解:该程序的执行过程是
i=4
S=0
i=4<6成立
i=4+2=6
S=0+62=36
i=6<6不成立
输出S=36.
1.条件语句的嵌套可多于两层,可以表达算法步骤中的多重限制条件.
条件语句一般用在需要对条件进行判断的算法设计中,如判断一个数的正负,确定两个数的大小等问题,还有求分段函数的函数值等,往往要用条件语句,有时甚至要用到条件语句的嵌套.
2.解决具体的构造循环语句的算法问题,引入循环变量要尽可能地少,否则较多的变量会使得设计程序比较麻烦,并且较多的变量会使得计算机占用大量的系统资源,致使系统缓慢.另外,也尽可能使得循环嵌套的层数少,否则也浪费计算机的系统资源.
条件语句的简单应用
2x-1
(x≥0),已知函数f(x)=2对任意的x,求函数值,请画出程序框图并写2x-5
(x<0),出程序语句.
(链接教材P25例5) [解]
程序框图如图所示:
程序如下:
INPUT
“x=”;x
IF
x>=0
THEN
∧
y=x2-1
ELSE
∧
y=2*x2-5
END
IF
“y=”;y
END
方法归纳
(1)对于分段函数的求值问题,由于计算之前,需要对自变量进行判断,因此需要用到条件结构,并且本例还是一个两个分支的条件结构,所以可运用条件语句的IF—THEN—ELSE—END IF格式来表示算法.
(2)条件语句是一个整体,IF
THEN
ELSE
END IF都是语句的一部分,且“IF
END IF”必须成对出现.
1.(1)输入一个数x,如果它是正数,则输出它;否则不输出.画出解决该问题的程序框图,并写出对应的程序.
解:程序框图如图所示:
程序如下:
INPUT
x
IF
x>0
THEN
x
END IF
END
(2)根据以下程序框图写出程序:
解:程序如下:
INPUT
“输入正整数”;n
IF
n>0
AND
n<=2
THEN
“获得一等奖学金”
END IF
IF
n>2
AND
n<=6
THEN
“获得二等奖学金”
END IF
IF
n>6
AND
n<=12
THEN
“获得三等奖学金”
END IF
END
WHILE语句的应用
设计计算1+2+3+4+…+99的值的一个算法,画出程序框图,并编写程序.
[解]
程序框图如图所示:程序如下:
i=1
S=0
WHILE
i<=99
S=S+i
i=i+1
WEND
S END
[互动探究]
如果本例的“加”改为“乘”,框图及程序有哪些变化?
解:框图中S=0和S=S+i分别改为S=1和S=S×i,程序中“S=0”改为“S=1”,“S=S+i”改为“S=S*i”.
方法归纳
累加、累乘问题一般都要应用循环语句来设计算法程序,应用循环语句时,关键是设计循环条件及循环体.本例的循环体为S=S+i,i=i+1.
2.编写一个程序计算1+1×2+1×2×3+…+1×2×3×…×100,并画出程序框图.
解:程序框图如图所示:
程序如下:
i=1
s=0
m=1
WHILE
i<=100
m=m*i
s=s+m
i=i+1
WEND
s
END
UNTIL语句的应用
1111编写一个程序计算+++…+的值,并画出程序框图.
1×23×45×62 015×2 016(链接教材P30例8) [解]
程序框图如图:
程序如下:
s=0
i=1
DO
s=s+1/(i*(i+1))
i=i+2
LOOP UNTIL
i>2 015
s
END
方法归纳
(1)这是一个累加求和问题,共1 008项相加,可设计一个计数变量,一个累加变量,用循环结构实现这一算法.
(2)UNTIL语句是先执行了一次循环体,再进行条件判断.
111113.(1)用UNTIL语句写出求1-+-+…+-的程序.
2349991 000解:程序如下:
s=0
i=1
DO
∧
s=s+((-1)(i-1))/i
i=i+1
LOOP UNTIL
i>1 000
s
END
(2)根据下列程序,画出相应的程序框图.
s=0 k=1 DO s=s+1/(k*(k+1)) k=k+1 LOOP UNTIL
k>99 PRINT
s END 解:程序框图如图所示.
条件语句与循环语句的综合应用
输入100个数,将其中的正数输出,写出计算正数个数的程序.
[解]
程序如下:
i=0
m=0
DO
INPUT
x
i=i+1
IF
x>0
THEN
x
m=m+1
END IF
LOOP UNTIL
i>=100
m
END
方法归纳
本例引入了两个变量:i是计数变量,初值为0,作用是记录输入的实数个数,故循环的条件为i≥100,若改用当型循环,则改为i<100.m也是计数变量,初值为0,作用是记录输入的正数个数.
4.(1)输入20个实数,统计并输出其中正数、零和负数的个数,写出算法语句.
解:程序如下:
i=1
num1=0
num2=0
num3=0
WHILE
i<=20
INPUT
“请输入实数:”;x
IF
x>0
THEN
num1=num1+1
ELSE
IF
x=0
THEN
num2=num2+1
ELSE
num3=num3+1
END IF
END IF
i=i+1
WEND
“正数的个数为:”;num1
“零的个数为:”;num2
“负数的个数为:”;num3
END
(2)给出某班50名学生的数学测试成绩,60分及以上为及格,要求统计及格人数、及格人数的平均分、全班同学的平均分,画出程序框图,并写出程序.
解:程序框图如图所示:
程序如下:
M=0,i=1,S=0,T=0
DO
INPUT
x
IF
x>=60
THEN
S=S+x
M=M+1
END IF
T=T+x
i=i+1
LOOP UNTIL
i>50
P=S/M
T=T/50
M,P,T
END
条件嵌套型问题的程序编写
规范解答
(本题满分12分)元旦期间,某商城搞挂历促销活动:原价每本20元,购买5到9本按9折收费,买10本及其以上按8折收费,请帮商场设计收费的程序.
[解]
设某人所购挂历本数为x,商场应收其y元,则y关于x的函数关系式为:
20x,
0<x<5,y=20×0.9x,5≤x≤920×0.8x,x≥10,程序如下:
INPUT
“x=”;x
IF
x>0
AND
x<5
THEN
y=20*x
ELSE
IF
x<=9
y=20*0.9*x
ELSE
y=20*0.8*x
END IF
END IF
y
END
[规范与警示]
正确写出y关于x的分段函数的关系式是解本题的关键.
注意语言符号的规范.
THEN
4分
8分
12分
(1)写程序一定要按要求的符号书写,要与我们平时的手写区分开.
(2)首先,对程序中条件的书写格式要熟练规范,如果要多个条件同时成立,应用“AND”连接,而不能是连续的不等式.其次,对条件语句要理解清楚,实际上第一个IF语句不成立时,已经隐含了“x>=5”这个条件.
(3)要熟悉条件语句的嵌套形式,任何时候,条件语句中的“IF”与“END IF”一定成对出现.
1.下列需用循环语句编写程序的是(
) A.输入x的值,输出y=x2-3x的值
x-4,x>0,B.y=输入x的值,输出对应的函数值
-x+1,x≤0,C.求x的立方根
D.求1+2+3+…+2 015的值
解析:选D.D项中是求多项数值的和,需用到循环语句.
2.给出以下四个问题,①输入一个数x,输出它的算术平方根;②求函数f(x)=x2+1,x≥0的函数值;③求周长为6的正方形的面积;④求三个数a,b,c中的最小数.其x-1,x<0中不需要用条件语句来描述其算法的有(
) A.1个
B.2个
C.3个
D.4个
解析:选A.①需判断这个数是否为非负数;②是分段函数求值问题;④需判断这三个数的大小.①②④均需用到条件语句,只有③不需要.
3.如果下列程序执行后输出的结果是132,那么在程序UNTIL后面的“条件”应为(
) i=12 s=1 DO
s=s*i
i=i-1 LOOP UNTIL
________ PRINT
s END A.i>11
B.i>=11 C.i<=11
D.i<11 解析:选D.当i=12时,s=1×12=12;当i=11时,s=11×12=132.故应填i<11.
4.下列语句
i=0 IF
i<100
THEN i=i+3 END IF END
执行完毕后i的值是________.
解析:i的初始值为0,满足条件i<100成立,执行语句i=i+3,有i=0+3=3.
答案:3
[A.基础达标] 1.下列对条件语句的描述正确的是(
) A.ELSE后面的语句不可以是条件语句
B.两个条件语句可以共用一个END IF语句
C.条件语句可以没有ELSE后的语句
D.条件语句中IF—THEN和ELSE后的语句必须都有
解析:选C.条件语句有两种格式:分别是IF—THEN格式和IF—THEN—ELSE格式.对于一个分支的条件语句可以没有ELSE后的语句.
2.下面程序输出的结果为(
) i=1 DO
i=i+2
S=2*i+3 LOOP UNITL
i>=8 PRINT
S END A.17
B.19 C.21
D.23 解析:选C.当i=9时,S=2×9+3=21,判断条件9≥8成立,跳出循环,输出S.
3.(2015·临沂高一检测)下列程序的功能是:判断任意输入的数x是否为正数,若是,输出它的平方值;若不是,输出它的相反数.
INPUT
x IF
________
THEN
y=-x ELSE
y=x*x END IF PRINT
y END 则填入的条件应该是(
) A.x>0
B.x<0 C.x>=0
D.x<=0 解析:选D.因为条件真则执行y=-x,条件假则执行y=x*x,由程序功能知条件应为x<=0.
4.如下程序的循环次数为(
) x=0 WHILE
x<20 x=x+1 ∧x=x2
WEND PRINT
x END A.1
B.2 C.3
D.4 解析:选C.程序执行如下:
(1)x<20,x=0+1=1,x=12=1;
(2)x<20,x=1+1=2,x=22=4,
(3)x<20,x=4+1=5,x=52=25,此时跳出循环,并输出x.
∴一共进行3次循环,故选C.
5.(2013·高考陕西卷)根据下列算法语句,当输入x为60时,输出y的值为(
) 输入x;
If x≤50 Then
y=0.5*x
Else
y=25+0.6*(x-50) End If 输出y.
A.25
C.31
解析:选C.由题意,
0.5x,x≤50,得y=
25+0.6(x-50),x>50.B.30 D.61 当x=60时,y=25+0.6×(60-50)=31.
∴输出y的值为31.
6.若a=11,下面的程序段输出的结果是________.
INPUT
a IF
a<10
THEN
y=2*(a-1) ELSE
y=a MOD 10 END IF PRINT
y END 解析:由于当a=11时,不满足条件a<10,所以执行y=a MOD 10,得到的结果是y=1.注意“a MOD 10”是a除以10的余数.
答案:1 7.已知下列程序:
INPUT
x IF
x<=-1
THEN
y=-x-1
ELSE
IF
x>1
THEN ∧y=-x2+1
ELSE y=x-1
END IF END IF PRINT
“y=”;y END 如果输出的是y=0.75,则输入的x是________.
-x-1,x≤-12解析:由程序可知本题为根据输入的x,求函数y=-x+1,x>1的函数值.我们
x-1,-1<x≤1可以分段令y=0.75,并验证,可求得x=-1.75.
答案:-1.75 8.(2015·吉林高一检测)已知有下面的程序,如果程序执行后输出的结果是360,那么在程序UNTIL后面的“条件”应为________.
i=6 s=1 DO
s=s*i
i=i-1 LOOP UNTIL
条件
s END
解析:因为输出的结果是360,即s=1×6×5×4×3,需执行4次,s需乘到3,i<3后结束算法.所以,程序中UNTIL后面的“条件”应为i<3(或i<=2).
答案:i<3(或i<=2) 9.(2015·罗源高一检测)编写一个程序计算12+32+52+…+992,并画出相应的程序框图.
解:程序如下:
S=0
i=1
DO
∧
S=S+i2
i=i+2
LOOP UNTIL
i>99
S
END
程序框图如图所示:
10.给出一个算法的程序框图(如图所示).
(1)说明该程序的功能;
(2)请用WHILE型循环语句写出程序.
111解:(1)该程序的功能是求1+++…+的值.
2399(2)程序如下:
S=0
K=1
WHILE
K<=99
S=S+1/K
K=K+1
WEND
S
END
[B.能力提升]
1.(2015·衡阳检测)下面程序运行后输出的结果为(
) a=0 j=1 WHILE
j<=5
a=(a+j) MOD 5
j=j+1 WEND PRINT
a END A.50
B.5 C.25
D.0 解析:选D.本程序的功能是求a+j被5除所得的余数,从而循环体在执行的过程中a与j的对应值如下表:
a
j
2.读程序:
甲:
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.执行甲、乙程序后,可知都是计算1+2+3+…+1 000的值.
3.(2015·滨州质检)读程序,完成下列题目:
程序如图:
INPUT
x IF
x>=1
THEN 1 2 3 3 1 4 0 5 0
6
y=x+1 ELSE
y=2*x+1 END IF PRINT
y END
(1)若执行程序时,没有执行语句y=x+1,则输入的x
的范围是________;
(2)若执行结果为3,则执行的赋值语句是________,输入的x的值是________.
解析:(1)不执行y=x+1语句,
说明不满足条件x≥1,故有x<1.
(2)当x<1时,y<2×1+1=3,
只有x+1=3,x=2.
答案:(1)x<1
(2)y=x+1
2 4.下面是一个用于计算111++…+的程序,则①处应填的语句是1×22×320×21________,②处应填的语句是________.
s=0 i=1 WHILE
i<=20 ①__ ②__ WEND PRINT
“s=”;s END
解析:累加求和需用赋值语句“s=s+1/(i*(i+1))”,控制执行循环条件需要用赋值语句“i=i+1”.
答案:s=s+1/(i*(i+1))
i=i+1 5.儿童乘坐火车时,若身高不超过1.1 m,则无需购票;若身高超过1.1 m但不超过1.4 m,可买半票;若超过1.4 m,应买全票.试写出一个购票算法程序.
解:程序如下:
INPUT
“身高h(h>0)”;h
IF
h<=1.1
THEN
“免费乘车”
ELSE
IF
h<=1.4
THEN
“半票乘车”
ELSE
“全票乘车”
END IF
END IF
END
6.(选做题)一个小朋友在一次玩皮球时,偶然发现一个现象:球从某高度落下后,每
11次都反弹回原高度的,再落下,再反弹回上次高度的,如此反复.假如球从100 cm处落33下,那么第10次下落的高度是多少?在第10次落地时共经过多少路程?试用程序语言表示其算法.
解:程序如下:
s=0
h=100
s=s+h
i=2
WHILE
i<=10
h=h/3
s=s+2*h
i=i+1
WEND
“第10次下落的高度为”;h
“第10次落地时共经过的路程为”;s
END
文档信息
- 格式: PDF
- 页数: 未知页
- 字数: 未知
- 上传时间: 2018-07-05 09:56:00
- 下载次数: 0
- 浏览次数: 16
- 积分: 1
- 收藏: 0
作者信息
5ygggwenku_147289
来自:学校:天祝藏族自治县第一中学
配套课件
相关文档
下载提示
下载文档后,您可以获得:
- 完整无水印文档
- 高清阅读体验
- 随时保存查看
- 支持打印下载
关于本教案的常见问题
Q:1.2.3 循环语句评课稿是什么类型的资料?
A:这是一份教学教案文档,可用于备课、课堂讲解与课后复习,支持在线预览正文内容。
Q:这份教案对应哪篇课文?
A:对应课文《1.2.3 循环语句》,可从面包屑进入课文目录查看同课其他资料。
Q:如何找到配套课件?
A:页面提供「配套课件/同课文课件」入口;也可进入课文详情页同时查看教案与课件列表。