资源简介 (共17张PPT)循环的嵌套和控制1)问:下列图形、表达式或词语有什么共同的特征?利用FOR循环语句,输出一行图形(五颗星号)。* * * * *如果是输出3行这样的星号图形呢 * * * * ** * * * ** * * * *那要是输出十行,百行星号呢?嵌套循环(多重循环)for循环语句中还有一个for循环语句,像这样在一个循环语句中含有另一个循环语句,就形成了嵌套循环,也叫多重循环。思考及练习:请同学们模仿刚才的一段程序代码,编写程序语句,输出5行6列的星号图形。* * * * * ** * * * * ** * * * * ** * * * * ** * * * * *试着输出以下三角形状的星号图形** ** * *实践:用for循环嵌套语句,输出以下数字排列图形。请同学们一起解读以下程序,口头解读得出运行结果,运用循环嵌套语句的注意点。*内循环变量与外循环变量不能同名;*外循环循环体的语句缩进必须把握清楚;for i in range(1,6):for i in range(1,6):print(i+j)print(i,’:’)for i in range(1,6):for j in range(1,6):print(i+j)print(i,’:’)总结问题1:什么样的问题适宜用嵌套循环来实现?问题2:嵌套循环如何正确使用?例题求6x+5y+4z=50正整数解的个数及显示所有解?用流程图描述求解6x+5y+4z=50的算法算法的流程图表示①t=0②x=1③y=1④z=1⑤如果6x+5y+4z==50,t=t+1,print x,y,z⑥z=z+1⑦如果z<=12,则转步骤⑤,否则继续步骤⑧⑧y=y+1⑨如果y<=10,则转步骤④,否则继续步骤⑩⑩x=x+1 如果x<= 8,则转步骤③,否则继续步骤 print t具体程序:t = 0for x in range(1, 9):for y in range(1, 11):for z in range(1, 13):if(6 * x + 5 * y + 4 * z == 50):print(x,y,z)t = t + 1print(t)循环的控制break与continue循环控制包含控制循环变量的变化方式和控制循环的跳转。无论是for循环还是while循环,都需要一个控制循环的变量来控制循环的执行。但是,有些循环仅靠循环变量自身的变化难以达到想要的效果,因此需要用到控制循环的跳转语句。实现控制循环的跳转需要用到break和continue两个关键字。其中,break是中断循环,continue是跳出本次循环体的执行。例题n!在什么时候大于10break运用:for循环:s=1for n in range(1,6):s=s*nprint(“s=”,s,end=' ')if(s>10):breakprint(“n=”,n)print(“n=”,n)break运用:while循环:s=1;i=0while(True):i=i+1:s=s*iprint(“s=”,s,end=' ')if(s>10):breakprint(“n=”,n)print(“n=”,n)例题n!在什么时候大于10continue运用:for循环:s=1for n in range(1,6):s=s*nprint(“s=”,s,end=' ')if(s>10):breakprint(“n=”,n)print(“n=”,n)continue运用:while循环:s=1;i=0while(True):i=i+1:s=s*iprint(“s=”,s,end=' ')if(s>10):breakprint(“n=”,n)print(“n=”,n)例题n!在什么时候大于10break运行结果:s= 1 n= 1s= 2 n= 2s= 6 n= 3s= 24 n= 4continue运行结果:s= 1 n= 1s= 2 n= 2s= 6 n= 3s= 24 s= 120 n= 5循环的嵌套和控制 展开更多...... 收起↑ 资源预览