八年级信息技术教案第五章 循环结构程序设计.docx
《八年级信息技术教案第五章 循环结构程序设计.docx》由会员分享,可在线阅读,更多相关《八年级信息技术教案第五章 循环结构程序设计.docx(11页珍藏版)》请在冰豆网上搜索。
八年级信息技术教案第五章循环结构程序设计
八年级信息技术教案第五章循环结构程序设计
第五章循环结构程序设计
第一节循序渐进
一、学习目的
.初步掌握计数循环、条件循环两种语句的格式和功能。
2.初步掌握简单循环结构程序的设计方法。
3.理解程序的循环结构的概念。
二、教学重点
掌握计数循环、条件循环两种语句的格式和功能。
三、教学难点
掌握简单循环结构程序的设计方法。
四、教学方法
.演示法。
2.实践法。
五、教学手段与教学媒体
多媒体网络教室。
六、课时安排
课时。
七、教学过程
教学内容、步骤与方法
二、学习指导
.计数循环语句
格式:
FoR循环变量=初值To终值STEP步长
语句组
NEXT循环变量
FoR语句为循环说明语句,NEXT语句为循环终端语句。
FoR和NEXT后面的循环变量必须相同。
初值、终值和步长都是数值表达式。
步长为1时,STEP可省略不写。
功能:
根据FoR语句说明设定的循环次数重复执行循环体。
其具体执行过程可用图5-4-l表示。
图5—4—1
其中循环变量超过终值的规则是:
步长为正,大于终值;步长为负,小于终值。
一般地循环次数可用下列公式计算:
循环次数=INT/步长)+1
2.条件循环语句
格式:
DowHILE条件
语句组
LooP
功能:
当条件成立时,执行Do和LooP之间的语句组,否则终止循环,转到LooP语句的下一句执行。
3.计数循环程序设计关键是确定循环的次数和重复循环的操作;条件循环程序设计的关键是确定循环的条件和重复循环的操作
三、应用实例
.编程求1+2+4+8+16+……+2n的值
解:
此题的计算公式是一个和式,加数为2的乘方,可考虑用累加求和的方法来计算。
设累加变量为s,加数为2k,k=o…n。
构造一个关于k的循环,重复执行s←s+2^k,即可算出和式的值。
根据分析,可编程序如下:
INPUTN
LETS=0
FoRk=oToN
LETS=S+2^k
NEXTk
PRINT“S=”:
S
END
运行结果如下:
?
63
S=1.844674E19
数列各项为2的0、l、2……n次乘方,即乘数始终为2的累乘积,可构造一个n次循环,用卜T*2累乘依次生成数列各项,用S←s+T依次累加各项。
循环结束,其累加和s的值即所求和式的值。
根据分析,可编程序如下:
INPUTN
LETT=1
LETS=T
FoRk=lToN
LETT=T*2
LETS=S+T
NEXTk
PRINT“S=”;S
END
运行结果如下:
?
63
S=1.844674E19
四、练习实践
.写出下列程序的运行结果
FoRA=1T05
PRINTA,A*A,2^A
NEXTA
END
LETm=1
INPUTA,B,c
FoRI=AToBSTEPc
LETm=m*I
NEXTI
PRINTm
END
①输入l,5,1
②输入50,-l,-1
结果为:
结果为:
LETT=1
LETA=0
FoRk=lT05
LETA=A+T*k
T=-T
NEXTk
PRINTA
END
结果为:
LETm=0
FoRX=1To10
IF
INT=x/2THEN
LETm=m+X
ENDIF
NEXTX
PRINTm
END
结果为:
LETS=o
LETX=2
DowHILES<30
LETS=S+X*X
LooP
PRINTS
END
LETA=l
LETB=l
D0wHILEB<20
PRINT
A,B
LETA=A+B
LETB=A+B
LooP
END
2.根据题意,把程序填写完整
求1/2+2/3+3/4+…+99/100的值。
LETS=0
FoRI=lTo
LETS=
NEXTI
PRINTS
END
把输入的6个数中绝对值大于5的数打印出来,并统计这样的数的个数。
LETT=0
FoRj=1T06
INPUTX
IF
THEN
PRINTX,
ENDIF
NEXTj
PRINT“T=”;T
END
教学后记:
第二节小小统计员-----wHILE—wEND语句
一、学习目标
了解wHILE—wEND语句的特点。
二、教学重点
wHILE—wEND语句的使用方法。
三、教学难点
wHILE—wEND语句的应用。
四、教学方法
.演示法。
2.实践法。
五、教学手段与教学媒体
多媒体网络教室。
六、课时安排
课时。
七、教学过程
教学内容、步骤与方法
二、wHILE循环结构 wHILE <条件>
<循环体>wEND
注:
<条件>是终止循环的逻辑表达式,<条件>应随循环的执行而变化,最终退出循环。
如:
s=0
i=1
wHILE i<=100
s=s+i
wEND
构成“死循环”——无终止的循环。
这时可用ctrl+Break终止其程序运行。
例1:
如果我国工农业生产每年以12%速度增长,问多少年后产值翻一番:
基值设为100。
(逐年计算产值,看是否达到200)
p=100
r=.12
n=0
wHILEp<200
p=p*
n=n+1
wEND
PRINTn;"years","p=";p
END
例2:
给出两个正整数,求它们的最大公约数。
算法:
(辗转相除法)
、以大数m作被除数,小的数n作为除数,相除后余数为r。
、如果r=0,则n就是最大公约数。
否则将n=>m,r=>n,重复。
程序及框图 :
INPUT"m,n=";m,n
r=mmoDn
wHILE r<>0
m=n
n=r
r=mmoDn
wEND
PRINT "最大公约数为:
",n
END
例3:
给一个整数n,判别它是否素数(质数)。
算法:
判别n是否素数,只要将n被1~各数轮流作除数除,若都不被整除,则为素数。
若n不是素数,则n=n1*n2,而n1和n2中必然有一个大于或等于n的开方根,另一个小于或等于n的开方根。
即若n是非素数,则必然有一个因子小于或等于n开方根。
程序及框图:
INPUT "n=";n
k=INT)
i=2
flag=0
wHILEi<=kANDflag=0
ifnmoDi=0THENflag=1ELSEi=i+1
wEND
IFflag=0THEN
PRINTn;"是素数!
"
ELSE
PRINTn;"不是素数!
"
ENDIF
END
教学后记:
第三节大浪淘沙----Do---LooP语句
教学目标:
知识目标:
.了解条件循环语句的结构
2.掌握条件循环语句执行过程
3.知道条件循环语句编程过程
4.掌握条件循环的格式及执行过程。
能力目标:
能够能读懂条件循环程序并编写简单的条件循环程序。
情感目标:
让学生了解要想做成一件事,应具备一定的条件。
教学重点:
条件循环的格式,执行过程。
教学难点:
循环执行的条件,重复循环的操作。
教学方法:
提问法
学生讨论交流法
训练反馈法
练习巩固法
教学过程:
一、复习旧课
求1+2+3+……+100的方法(计数循环)
二、引入新课
求1+2+3+……到和大于1000为止,怎样求?
叫学生思考,讨论。
通过前面已学习的知识解决这个问题较为困难,于是引出新知——条件循环,它就可完成此题。
格式:
Do
wHILE
条件
语句组(循环体)
LooP
功能:
当条件成立(即为真)时,执行Do和LooP之间的语句组(即循环体);否则终止循环,转到LooP语句的下一句执行。
流程图
例题一
统计某班某科考试成绩平均分
S=0
R=0
INPUTX
DowHILEX>=0
S=S+X
R=R+1
INPUTX
LooP
PRINT
S/R
例题二
求从1开始的自然数相加直到和大于1000为止。
S=0
X=1
DowHILES<=1000
S=S+X
X=X+1
LooP
PRINT“S=”;S
END
练习一
求在等式3□X8256=□3X6528里□中的最小值。
X=1
DowHILE
X=X+1
LooP
PRINT
END
练习二
年产值为1000万,若年增长率为8%,几年后产值翻上两番。
T=1000
N=0
DowHILE
N=N+1
T=
LooP
RPINT
END
总结
介于DowHILE和LooP之间的语句是循环体。
确定循环的条件和重复循环的操作。
在循环体中要有能使条件改变的语句。
作业
第一题
S=0
X=2
DowHILES<30
S=S+X*X
LooP
PRINTS
END
第二题
A=1
B=1
DowHILEB<20
PRINTA,B
A=A+B
B=A+B
LooP
END
板书设计(把主要和重要的容放在黑板的醒目位置——中间)
例题一
格式
习题
流程图
总结
例题二
功能
作业
时间分配
复习旧课,引入新课(3分钟)
格式,功能,流程图(12分钟)
例题(11分钟)
习题(11分钟)
总结,作业(8分钟)
教学后记:
第四节环环相扣---循环嵌套
一、学习目标
了解循环嵌套的特点。
二、教学重点
循环嵌套的使用方法。
三、教学难点
循环嵌套的应用。
四、教学方法
.演示法。
2.实践法。
五、教学手段与教学媒体
多媒体网络教室。
六、课时安排
课时。
七、教学过程
教学内容、步骤与方法
一个循环体内包含另一个循环
找出100-200间的全部素数。
forn=101to200step2k=int) i=2 f=0 whilei<=kandf=0ifnmodi=0thenf=1elsei=i+1
wend iff=0thenprintn,nextn end
例打印乘法九九表
fori=1to9forj=1to9
p=i*j
printp,
nextj
print
nexti
end 打印表格(P175)
printTAB;"|"
forj=1to9
printtab;j;
nextj
print
forn=1to75
print"-";
nextn printtab;"|";
print
fori=1to9
printi;"|";
forj=1to9
p=i*j
printTAB;p;
nextj
print
nexti
forn=1to75
print"-";
nextn
end
教学后记: