高一数学教案:苏教版高一数学循环语句1
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
循环语句
教学目标:理解、掌握循环语句,能运用循环语句表达解决具体问题的过程。 教学重点:循环语句的表示方法、结构和用法.
教学难点:将具体问题的程序框图转化为程序语句的过程,当型循环和直到型循环的格式与逻辑的区别与联系. 课 型:新授课 教学手段:多媒体 教学过程: 一、创设情境
前面,我们学习了算法的赋值、输入、输出和条件语句,这节课我们来学习算法的循环语句。算法中的循环结构是由循环语句来实现的。对应于程序框图中的两种循环结构,一般程序设计语言中有当型(WHILE 型)和直到型(UNTIL 型)两种语句结构。即WHILE 语句和FOR 语句。 二、师生探究
问题1:设计计算1×3×5×……×99的一种算法。
分析:这是一个累加问题,画出相应的流程图,再将流程图转译为语句。
转译为
问题2:设计求满足1×3×5×7×…×_>10000的最小正整数的一种算法
转译为
FOR 语句的操作步骤:这个程序一共四步:
第一步是选择一个变量S 表示积,并赋给初值1。
第二步开始进入for 循环语句,首先设i 为循环变量,分别设定其初值、步长、终值。这里初值为1,步长为2,终值为99。 第三步为循环表达式(循环体)。
第四步用“End For ”控制结束一次循环,开始一次新的循环。 WHILE 语句的步骤:
第一步选择一个变量S 表示积,并赋给初值1。
第二步是选择一个变量I 表示循环值,并赋给初值1; 第三步开始进入while 循环语句 循环体:S ←S ×I
I ←I+2
解释:I=1时,1×1=1≤10000, I ←3(1+2);遇到End While 开始第二次循环; 三、数学理论
算法中的循环结构是由循环语句来实现的。对应于程序框图中的当型(WHILE 型)和直到型(UNTIL 型)两种循环结构,一般程序设计语言中也有当型(WHILE 型)和直到型(For 型)两种语句结构。
1.
说明:当计算机遇到UNTIL 语句时,先执行For 和End For 之间的循环体,然后判断条件是否成立,如果不成立,执行循环体.这个过程反复执行,直到某一次符合条件为止,这时不再执行循环体,跳出循环体执行End For 后面的语句
. 因此,
直到型循环有时也称为“后测试型”循环.
2. 当型(WHILE
型)语句的一般格式:
说明:当计算机遇到While 语句时,先判断条件的真假,如果条件符合,就执行While 与End While 之间的循环体;然后再检查上述条件,如果条件仍符合,再次执行循环体,这个过程反复进行,直到某一次条件不符合为止.这时,计算机将不执行循环体,直接跳到End While 语句后,接着执行End While 之后的语句.因此,当型循环有时也称为“前测试型”循环. 3.当型循环与直到型循环的区别:
①当型循环先判断后执行,直到型循环先执行后判断. ②当型循环用WHILE 语句,直到型循环用For 语句.
③对同一算法来说,当型循环和直到循环的条件互为反条件. 五、巩固运用
〖例1〗某纺织厂1997年的生产总值为300万元,如果年生产增产率为5﹪,计算最早在哪一年生产总值超过400万元。
分析:从1997年底开始,经过x年后生产总值为300×(1+5%)x,可将1997年生产总值赋给变量a,然后对其进行累乘,用n作为计数变量进行循环,直到a的值超过400万元为止。解:程序框图为:程序:
〖例
2〗抛掷一枚硬币时,既可能出现正面,也可能出现反面,预先作出确定的判断是不可
能的,但是假如硬币质量均匀,那么当抛掷次数很多时,出现正面的频率应接近于50%,试设计一个循环语句模拟抛掷硬币的过程,并计算出现正面的频率。
分析:抛掷硬币的过程实际上是一个不断重复做同一件事情的过程,利用循环语句当然可以设计其程序。
解:本题算法的伪代码如下:
s←0
Read n
For i from 1 to n
If Rnd>0.5 Thens s←s+1
End For
Print 出现正面的频率为s n
六、回顾反思
1. 理解、掌握当型循环和直到型循环的逻辑与格式的区别与联系.
2. 当型、直到型循环条件的构造,循环体的确定.
3. 由程序框图转化为程序语句时,条件结构和循环结构的区别.
七、课后练习
1.下列循环格式正确的是( )
A.For循环变量From初值:步长End For
B.For循环变量From初值To终值步长循环体End For C.While循环体初值终值End While
D.While表达式End
2.循环语句中的步长( )
A .可以省略
B .不能省略
C .只有步长为1时才可省略
D .以上全错 3.算法程序:S ←0
For I From l To 1000 S ←S+I End For
中,From 1 To 1000的作用是( )
A .表示一个数字从1到1 00
B .表示从1一直加到1 000
C .表示从1开始循环到1 000
D .表示I 从1开始以1为步长累加到1 000 4.执行算法程序:S ←0
For I From 1 To 10000 Step 2 S ←S+I End For
中,循环10次的结果是 .
5.请用For 循环语句设计小于1 000的完全平方数的和的算法. 6.可以用公式
2
2
2
2
1116
2
3
n
π
=
+
++
+
求π的近似值,给定一个很小的正数a (例如a <100
10
-),
当
2
1a n
<时,取
2
2
2
111,
,,
,2
3
(1)
n -这些项的和为
2
6
π
的近似值,然后可求出π的近似值.请设
计一个算法并写出其伪代码,求出π的近似值. 参考答案
1. B
2. C
3. D
4. 100
5. 算法分析:
第一步是选择一个变量S 表示和,并赋给初值为0; 第二步是选一个循环变量I ,并赋给初值为1;
第三步开始进入While 循环语句,首先判断I 的平方是否小于1000; 第四步为循环表达式(循环体);
第五步用End while 来控制循环,结束循环后执行后面的语句; 第六步结束程序. 伪代码如下所示. S ←0 I ←1
While I 2 End While Print S