九九乘法表有四种展现形式

1.左下三角形

方法1:for…for循环实现

for i in range(1, 10):
    for j in range(1, i + 1):
        print(f'{j}* {i}={i*j}' , end='\t')
    print()

详解方法1的实现过程:

for循环用于遍历,遍历几次输出几次

range():取范围值,取头不取尾,range(1,10)代表取数字1-9

打印输出第一行数据:1*=1

  • step1:第一行代码得到i=1,然后跳到第二行代码
  • step2:此时第二行代码j的范围值为range(1,2),j的取值只有1,然后跳转到第三行代码
  • step3:i=1,j=1,第三行代码输出1*1=1,末尾有四个空格
  • step4:第三行输出后,会跳转到第二行代码,此时j不能等于2,没有符合条件的取值,程序会直接跳过第三行代码,跳转到第四行代码,输出换行
  • 此时控制台输出:

    打印输出第二行数据:1*2=2    2*2=4

  • step1:i=2
  • step2:此时j in range(1,3),j的取值有1,2,j=1时,跳转到第三行代码
  • step3:第三行输出打印1*2=2,末尾有四个空格,然后又跳转到第二行代码,此时j=2,在取值范围内
  • 然后执行第三行,打印输出2*2=4
  • step4:跳转到第二行代码,此时j不能等于3,没有符合条件的取值,程序会直接跳过第三行代码,跳转到第四行代码,输出换行
  • 此时控制台输出:

    以此类推,输出全部内容……

    方法2:for…while实现

    for i in range(1, 10):
        j=1
        while j < i + 1:
            print(f'{j}* {i}={i*j}' , end='\t')
            j=j+1
        print()

    方法3:while…while循环实现

    i=1
    while i <10:
        j=1
        while j<i+1:
            print(f'{j}* {i}={i * j}', end='\t')
            j=j+1
        i=i+1
        print()

    方法4:while…for实现

    i = 1
    while i < 10:
        for j in range(1, i + 1):
            print(f'{j}* {i}={i * j}', end='\t')
        i = i + 1
        print()

    方法5:函数实现

    def multiplication_table(i):
        while i<10:
            for j in range(1, i + 1):
                print(f'{j}* {i}={i * j}', end='\t')
            print()
            i=i+1
    
    multiplication_table(1)

    方法6:变量实现

    a = [1, 2, 3, 4, 5, 6, 7, 8, 9]
    for i in a:
        j = 1
        while j < i + 1:
            print(f'{i}*{j}={i*j}', end='\t')
            j=j+1
        print()

    运行结果:

     2.左上三角形:

    方法1:for循环实现

    for i in range(9, 0, -1):  # 参数:计数从9开始,0结束,步长-1
        for j in range(1, i + 1):
            print(f'{j}* {i}={i * j}', end='\t')
        print()

    方法2:while循环实现

    i=9
    while i >0:
        j=1
        while j<i+1:
            print(f'{j}* {i}={i * j}', end='\t')
            j=j+1
        i=i-1
        print()

    运行结果:

     3.右上三角形:

    方法1:for循环实现

    for i in range(9,0,-1):
        for j in range(1,i+1):
             print(f'{j}*{i}={i*j}',end='\t')
        print()
        for k in range(i,10):
             print(end='        ')
    

    方法2:while循环实现 

    i=9
    while i >=1:
        k=9
        while k>i:
            print(end='       ')
            k=k-1
        j=1
        while j<=i:
            print("%d*%d=%2d"%(j,i,j*i), end=' ')
            j=j+1
        print()
        i=i-1
    

    运行结果:

     4.右下三角形:

    方法1:for循环实现

    for i in range(1,10):
        for j in range(1,10-i):
             print(end='       ')   #每个算法长度6,加上1个空位符,最少7个占位符
        for k in  range(1,i+1):
             print("%d*%d=%2d"%(k,i,k*i),end=' ')
        print("")

    方法2:while循环实现

    i=1
    while i<10:
        j=1
        while j<10-i:
            print(end='       ')  # 每个算法长度6,加上1个空位符,最少7个占位符
            j=j+1
    
        k=1
        while k<i+1:
            print("%d*%d=%2d" % (k, i, k * i), end=' ')
            k=k+1
        print("")
        i=i+1

    运行结果:

    欢迎纠正和完善~~~

    物联沃分享整理
    物联沃-IOTWORD物联网 » Python实现九九乘法表

    发表评论