四种不同格式打印久久乘法表,初学者最常用的练习之一,对理解算法逻辑很有必要
#完整格式输出九九乘法表
输出结果:
左上三角形
代码:
#左上三角格式输出九九乘法表
for i in range(1,10):
for j in range(i,10):
print("%2d" % (i*j),end=" ")
print("")
输出内容:
1 2 3 4 5 6 7 8 9
4 6 8 10 12 14 16 18
9 12 15 18 21 24 27
16 20 24 28 32 36
25 30 35 40 45
36 42 48 54
49 56 63
64 72
81
注:乘法算式按行输出,与完整格式相比,内层循环范围为i~9,当外层循环的i逐渐递增时,每行输出的算式个数会越来越少,print("")表示换行,不输出这句的话输出的乘法表格式错乱。
右上三角形
代码:
#右上三角格式输出九九乘法表
for i in range(1, 10):
for k in range(1, i):
#s输出三个空格,使格式对齐(不同环境可能个数不一样,自行判断即可)
print(end=" ")
for j in range(i, 10):
print("%2d" % (i * j), end=" ")
print("")
输出内容:
比左上三角形,内层循环语句多了两句(代码标红处),由于每个算式所占的位置为7个字节,所以多余前面空出的地方输出相应的空格数,在Python中不能直接写print(" ")语句表示输出空格,必须添加end关键字,表示结尾以等号右边的内容输出,与后面的右上和左上的差别相似。
左下三角形
for row in range(1,10):
#打印一行
for col in range(1,row+1):
#print函数默认任务打印完毕后换行
product = row * col
#%2d代表2位数
print ("%2d"%product,end=" ")
print (" ")
输出内容:
1
2 4
3 6 9
4 8 12 16
5 10 15 20 25
6 12 18 24 30 36
7 14 21 28 35 42 49
8 16 24 32 40 48 56 64
9 18 27 36 45 54 63 72 81
右下三角形
for i in range(1, 10):
for k in range(1, 10 - i):
print(end=" ")
for j in range(1, i + 1):
product = i * j
print("%2d" % product, end=" ")
print(" ")
输出内容:
1
2 4
3 6 9
4 8 12 16
5 10 15 20 25
6 12 18 24 30 36
7 14 21 28 35 42 49
8 16 24 32 40 48 56 64
9 18 27 36 45 54 63 72 81