内容正文:
4.4.3 循环嵌套的应用
1
新知讲解
循环嵌套,又称多重循环。
即,某一种循环语句中包含着自身或其他循环语句。
面向“工作要做很多遍,而每一遍工作都是雷同的”的问题
2
循环嵌套的一般格式
for 表达式1:
语句块1
for 表达式2 :
语句块2
for 表达式1:
语句块1
while 表达式2 :
语句块2
while 表达式1:
语句块1
for 表达式2 :
语句块2
while 表达式1:
语句块1
while 表达式2 :
语句块2
3
思考:如何分行列输出整齐的“*”?
小明想编写程序,按照如下规律输出“*”
4
例:分行列输出整齐的“*”
输出结果如右:
5
案例分解:探究案例程序的控制因素
对于右图的输出,程序中具体对其的影响参数或语句的表达效果如何呢?
6
案例分解:探究案例程序的控制因素
①尝试更改外层for循环的参数,观察其变化
输出结果:
7
案例分解:探究案例程序的控制因素
②尝试更改内层for循环的参数,观察其变化
输出结果:
8
案例分解:探究案例程序的控制因素
③尝试更改输出语句,观察其变化
9
案例拓展:能否将输出改为如下
10
拓展:斜行输出整齐的“*”
输出结果如右:
11
例题讲解:解决现实情境问题
12
1. 分析问题:
例题讲解:解决现实情境问题
笔记本 笔 小饰品 余额
至少购置 100 100 100
最多购置 555 526 476
最佳方案 x y z r
得到数学公式:r=1000-(1.8x+1.9y+2.1z)
13
设计算法:
例题讲解:解决现实情境问题
穷举法
14
变量声明,赋初始值
例题讲解:解决现实情境问题
15
循环嵌套
例题讲解:解决现实问题
16
核心执行语句:
例题讲解:解决现实情境问题
17
输出结果:
例题讲解:解决现实情境问题
18
拓展练习:输出99乘法表
输出如下所示的99乘法表:
19
拓展练习:输出99乘法表
程序范例:
for i in range(1, 10):
for j in range(1, i + 1):
s = i * j
print(i,'x',j,'=',s,end=' ')
print("
")
20
再 见!
$$