美文网首页
2020年4月2日 第三章 程序控制结构-6

2020年4月2日 第三章 程序控制结构-6

作者: anivad | 来源:发表于2020-04-02 16:26 被阅读0次

第三章 程序控制结构-6

5 嵌套程序

无论是分支结构还是循环结构,都允许嵌套。嵌套就是分支内还有分支,循环内还有循环或者分支内有循环,循环内有分支等。
# 注意区别恒真循环
import random
num=random.randint(0,10)
x=eval(input("请输入一个数:"))
while True:
  if num==x:
    print("恭喜你猜对了!")
    break
  else:
    print("很遗憾,没有猜对哟!")
  x=eval(input("请输入一个数:"))
# *********
for j in range(1,10):
  print(" *", end="")

# 重复输出9行*号
for i in range(1,10):
  for j in range(1,10):
    print("*", end="")
  print( )
嵌套循环:在循环语句中包含另外一个完整循环语句

生活中嵌套循环的例子

# 钟表
for i in range(1,13):
  for j in range(1,60):
    ……
  ……

任务-输出九九乘法表

效果
1*1= 1
2*1= 2 2*2= 4
3*1= 3 3*2= 6 3*3= 9
4*1= 4 4*2= 8 4*3=12 4*4=16
5*1= 5 5*2=10 5*3=15 5*4=20 5*5=25
6*1= 6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36
7*1= 7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49
8*1= 8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64
9*1= 9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81

问题分析

任务分解—步骤1

for i in range(1,10):
  for j in range(1,i+1):
    print(" *", end="")
  print( )

任务分解—步骤2

for i in range(1,10):
  for j in range(1, i+1):
    print(i,"*",j,"=",i*j,end=" ")
  print( )
for i in range(1,10):
  for j in range(1, i+1):
    if i*j>=10:
      print(str(i)+"*"+str(j)+"="+str(i*j),end=" ")
    else:
      print(str(i)+"*"+str(j)+"="+" "+str(i*j),end=" ")
  print( )
for i in range(1,10):
  for j in range(1, i+1):
    print(" {}*{}={:<2d}". format.(i,j,i*j), end="")
  print( )

嵌套循环小结

1 嵌套循环的一般结构如下

while 条件表达式1:
  while 条件表达式2:
    语句序列2
  语句序列1

while 条件表达式1:
  for 变量 in 序列对象:
    语句序列2
  语句序列1

for 变量1 in 序列对象1:
  for 变量2 in  序列对象2:
    语句序列2
  语句序列1
  
for 变量1 in 序列对象:
  while 条件表达式:
    语句序列2
  语句序列1

2 每一层循环在逻辑上必须是完整的

3 嵌套的内外循环控制变量不应同名

课后扩展练习

分别输出如图所示的图形
图一
*****
 *****
  *****
   *****
    *****
图二
*****
 ****
  ***
   **
    *
图三
  *
 ***
*****
#图一
for i in range(1,6):
  for z in range(i):
    print(" ",end="")
  for j in range(1,6):
    print ("*",end="")
  print()

#图二
for i in range(1,6):
  for z in range(0,i):
    print(" ",end="")
  for j in range(5,i-1,-1):
    print ("*",end="")
  print()

#图三
for i in range(1,6,2)
  for z in range(1,int((5-i)/2)+1):
    print ("*",end="")
  for j in range(1,i+1):
    print ("*",end="")
  print()

相关文章

  • 2020年4月2日 第三章 程序控制结构-6

    第三章 程序控制结构-6 5 嵌套程序 无论是分支结构还是循环结构,都允许嵌套。嵌套就是分支内还有分支,循环内还有...

  • 2020年3月18日 第三章 程序控制结构-1

    第三章 程序控制结构-1 1.程序基础 2.顺序结构 3.分支结构 4.循环结构 5.嵌套程序 6.程序的异常处理...

  • 2020年3月19日 第三章 程序控制结构-2

    第三章 程序控制结构-2 3.2 双路分支结构 双路分支结构是一种二选一,即一个条件分两种情形处理 语法格式 当<...

  • 2020年3月25日 第三章 程序控制结构-3

    第三章 程序控制结构-3 知识回顾与导入 4 循环结构 在程序设计过程中,经常需要将一些代码按照要求重复多次执行,...

  • 2020年3月26日 第三章 程序控制结构-4

    第三章 程序控制结构-4 4 循环结构 在程序设计过程中,经常需要将一些代码按照要求重复多次执行,这时就需要用到循...

  • 2020年4月1日 第三章 程序控制结构-5

    第三章 程序控制结构-5 4.3 循环的特殊控制语句 功能 在程序执行过程中,有时候需要提前跳出循环;或者在某种条...

  • 第三章 流程控制

    一.程序控制 种类: 顺序及结构顺序结构.png 选择结构选择结构.png 循环结构循环结构.png 二.条件语句...

  • 编程范式

    结构化编程 结构化编程对程序控制权的直接转移进行了限制和规范 面向对象编程 面向对象编程对程序控制权的间接转移进行...

  • 程序控制结构 2

    程序的分支结构 单分支结构: 根据判断条件结果而选择不同向前路径的运行方式 if <条件>: <语句块> 二分...

  • JS基础--2

    js中的程序控制语句 常见的程序有三种执行结构: 顺序结构 分支结构 循环结构 顺序结构:程序从第一行开始执行,按...

网友评论

      本文标题:2020年4月2日 第三章 程序控制结构-6

      本文链接:https://www.haomeiwen.com/subject/vzwxphtx.html