内容正文:
4.4 运用循环结构描述问题求解过程
CONTENT
1
for循环的应用
2
while循环的应用
3
嵌套循环的应用
4
循环控制的应用
复习回顾
上节课,我们把竞猜价格的小游戏改进到了这一步:
我猜中价格的几率高吗?
为什么?
怎样才能提高正确率?
代码段
条件
成立
不成立
循环结构
for循环的应用
for 循环变量 in 列表:
语句或语句组
注意:
循环体在书写时需要缩进。从for语句末尾的冒号开始,至下面没有缩进的代码之间,都是其包含的需要重复执行的部分。
相同的代码,缩进不同,则输出结果不同。
for循环的应用
for 循环变量 in 列表:
语句或语句组
列表的表达方式:
1
直接罗列
2
先定义后使用
3
range()函数
range()函数是从指定的第一个值开始数,并在到达所指的第二个值时停止,因而不包含第二个值。
包含1但不包含6
for循环的应用
使用range()函数时,还可以指定步长:
负值表示降序
若不指定,则默认步长为1
竞猜价格小游戏
请你在上节课的程序代码基础上,用for循环加以改进,实现三次竞猜价格的机会。
i 是一个变量,用于计数。
第一次i为0,第二次i为1,第三次i为2,循环结束。
竞猜价格小游戏
如果我在第一次或第二次就猜中了,会是什么情况呢?
由于我们设定了循环次数是三次,即使你在第一次或第二次猜中,程序在给出“恭喜你,猜对了”的提示之后,依然会继续执行循环。
竞猜价格小游戏
我发现三次机会还是很难猜中,所以默默地把次数改成了五次……
场面一度十分尴尬
竞猜价格小游戏
我发现三次机会还是很难猜中,默默地把次数改成了五次……
竞猜价格小游戏
显然我们是希望猜中正确答案后结束这个循环,而不是强制性地走完五次循环。
不管是在第几次循环,只要猜对了就终止循环。
第四次猜对了,直接终止,不会再猜第五次。
完美
while循环的应用
表达式?
循环语句
Y
N
while(表达式):
语句或语句组
表达式一般是一个关系表达式或一个逻辑表达式,表达式的值应该是一个逻辑值:真(True)或假(False)。
while循环是一个当型循环,当表达式的值为真时,执行循环体语句;当表达式的值为假时,执行循环体外的下一条语句。
循环体中必须有改变条件表达式值的语句,否则将成为死循环。
whil