内容正文:
2.3 循环结构 — while循环
情境导入
是否存在一张纸通过反复折叠所产生的厚度,会超过珠穆朗玛峰的高度?
厚度
珠穆朗玛峰:8844.43m
请同学们说一说应该如何解决这个问题?用一张纸反复折叠?用数学的方法进行计算。
情境导入
厚度为0.0001m
第一次对折
厚度为
0.0002m
第二次对折
厚度为
0.0004m
第三次对折
厚度为
0.0008m
用数学的方法计算显然是十分繁琐且容易出错的,所以我们可不可以利用Python编程来帮助我们解决这个问题呢?首先,请大家回答老师一个问题:我们的折纸是一个什么样的过程?没错,就是一个不断重复的过程,也就是我们之前学习过得三种结果中的循环结构。
1
2
学习目标
能够利用while循环语句编写简单的程序解决问题,在解决问题的过程中培养学生养成良好的编程习惯、形成计算思维。
3
目标展示
理解while循环结构的基本思想。
掌握while循环语句的基本结构、循环条件的设置和循环结构的执行过程。
while循环语句的一般格式
while 关系表达式 :
语句或语句块
一直循环,直到条件不满足才退出,所以while循环又叫条件循环
当
循环条件
循环体
TRUE
FALSE
while循环的逻辑就是先要判断循环条件是否成立?
while循环语句的一般格式
while 关系表达式 :
语句或语句块
只有当循环条件(即关系表达式)成立时,才执行循环体(语句或语句组)
一组重复执行的语句称为循环体
循环体必须相对关键词while有缩进。
关系表达式被称为循环控制条件
英文状态下冒号“:”
当
while循环语句的应用举例
i=1
while i<3 :
print(1)
i=i+1
i<3
print(1)
TRUE
FALSE
i=i+1
程序输出
1
1
i=1
i=1
i=2
i=2
i=2
i=3
i=3
i=3
while循环语句的特征
i=1
while i<3 :
print(1)
i=i+1
起始
终止条件
变化
假如没有让起始值发生改变的语句,程序会输出什么呢?
i=1
while i<3 :
print(1)
探究1:请打开while.py文件,试一试。
while循环语句的应用
记录折纸的次数n 纸的厚度h 是否超过8844.43m
0 0.0001 <8844.43
0+1
0.0001*2
<8844.43
(0+1)+1
(0.0001*2)*2
<8844.43
......
........
>8844.43
i=i+1
h=h*2
<8844.43
结束循环
探究2:折纸次数vs珠穆朗玛峰
while循环语句的应用
h = ① #初识h为纸张的厚度,单位为米
n = ② #初识化折叠次数
while h ③ 8844.43 : #循环计算纸张折叠后的厚度是否超过珠穆朗玛峰
h = h ④ #每次折叠后纸张的厚度
n=n+1 #折叠次数加一
print(“超过珠穆朗玛峰的高度,需要将纸折叠约”,n,”次”)
探究2.py:折纸次数vs珠穆朗玛峰
学考链接
基础练习
请先删除①、②、③及下划线,再补充完善程序,使其正确运行及解决如下问题:
用水次数计算程序,池水初始总量为500立方米,第一次用去一半,第二次用去剩余的一半,这样每次用去前一次剩余的一半,使用多少次后其总量首次不足10 立方米。
L=500
n=__①__
while L__②__10:
L=L/2
n=n__③__
print("使用了",n,"次后总量首次不足10立方米")
学考链接
拓展练习——*****的故事
请先删除①、②、③及下划线,再补充完善程序,使其正确运行打印以下图案:
*
**
***
****
*****
i=__①__
while i__②__:
print(‘*’__③__)
i=i+1
课堂总结
while循环
基于条件的循环
表达式(循环控制条件):
循环体
避免死循环(循环体中有
改变条件表达式值的语句)
THANK YOU FOR WATCHING.
谢谢观看
$