Pythonは九九乗算表を印刷して、4種類のタイプはすべてここにあります

4385 ワード

考え方のまとめ:
まず9 x 9のマトリクスを印刷し、実行結果に最終効果の部分を見つけます.そして実際の状況に応じて、余計な部分を削除(置き換え)する方法を考えます:1、出力を停止する場所は出力を停止する2、スペースを充填する場所はスペースを充填する
第1種
while
i=1
while i<10:
	j=1
	while j2}".format(j,i,i*j),end="  ")
		j+=1
	i+=1
	print()

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

実行結果
========================================================================

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

========================================================================

第2種
while
i=9
while i>0:
	j=1
	while j<10:
		if i>j:
			print(" "*8,end="")
		else:
			print("{}*{}={:>2}".format(i,j,i*j),end="  ")
		j+=1
	i-=1
	print()

for in
for i in range(9,0,-1):
	for j in range(1,10):
		if i>j:
			print(" "*8,end="")
		else:
			print("{}*{}={:>2}".format(i,j,i*j),end="  ")
	print()

実行結果
========================================================================

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

========================================================================

第3種
while
i=1
while i<10:
	j=1
	while j<10:
		if i>j:
			print(" "*8,end="")
		else:
			print("{}*{}={:>2}".format(i,j,i*j),end="  ")
		j+=1
	i+=1
	print()

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

実行結果
========================================================================

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

========================================================================

第4種
while
i=9
while i>0:
	j=1
	while j2}".format(j,i,i*j),end="  ")
		j+=1
	i-=1
	print()

for in
for i in range(9,0,-1):
	for j in range(1,i+1):
		print("{}*{}={:>2}".format(j,i,i*j),end="  ")
	print()

実行結果
========================================================================

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

========================================================================