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

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
复制代码

结果测试

 
学习记录,小白一枚
原文地址:https://www.cnblogs.com/wangsirde0428/p/14322348.html