007.Python循环语句while循环嵌套

北慕城南 提交于 2020-02-05 22:24:45

1 使用两个循环打印十行小星星

j = 0
while j<10:

        # 打印一行十个小星星
        i = 0
        while i<10:
                print("*",end="")
                i+=1

        # 控制换行
        print()
        j+=1

执行测试

2 打印十行十列隔列换色小星星

j = 0
while j<10:

        # 打印一行十个小星星
        i = 0
        while i<10:
                # 控制打印星星的
                if i % 2 == 0:
                        # 控制打印黑星
                        print("★",end="")
                else:
                        # 控制打印白星
                        print("☆",end="")
                i+=1

        # 控制换行
        print()
        j+=1

执行测试

3 打印十行十列隔行换色小星星

j = 0
while j<10:

    # 打印一行十个小星星
    i = 0
    while i<10:
        # 控制打印星星的
        if j % 2 == 0:
            # 控制打印黑星
            print("★",end="")
        else:
            # 控制打印白星
            print("☆",end="")
        i+=1

    # 控制换行
    print()
    j+=1

执行测试

4  打印99乘法表

i = 1
while i<=9:

        # 输出99乘法表
        j = 1
        while j<=i:
                print("%d*%d=%2d " % (i,j,i*j),end="")
                j+=1

        # 执行换行
        print()

        i+=1

执行测试

[root@node10 python]# python3 test.py
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

5 倒数出

i = 9
while i>=1:


        # 输出99乘法表
        j = 1
        while j<=i:
                print("%d*%d=%2d " % (i,j,i*j),end="")
                j+=1

        # 执行换行
        print()


        i-=1

结果

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
8*1= 8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64
7*1= 7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49
6*1= 6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36
5*1= 5 5*2=10 5*3=15 5*4=20 5*5=25
4*1= 4 4*2= 8 4*3=12 4*4=16
3*1= 3 3*2= 6 3*3= 9
2*1= 2 2*2= 4
1*1= 1

6 列出100-999之间所有的吉利数字,即111,222,123,456,987,654......

num = 100
while num <= 999:
    digits = num % 10
    tens = num % 100 // 10
    hundreds = num // 100
    if digits == tens == hundreds:
        print (num)
    elif digits+2 == tens+1 == hundreds:
        print (num)
    elif digits-2 == tens-1 == hundreds:
        print (num)
    num +=1

执行

7  百钱买百鸡  公鸡1块钱一只  母鸡 3块钱一只  小鸡5毛钱一只 100块钱 买 100只鸡 有多少种买法

穷举法

cock = 0
while cock <=100:
        hen = 0
        while hen<=33:
                chick = 0
                while chick<= 100:
                        if (cock+hen+chick == 100) and (cock+hen*3+0.5*chick == 100):
                                print(cock,hen,chick)
                        chick+=1
                hen+=1
        cock+=1

结果测试

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!