[英]How to make it in Pascal triangle shape. Meaning 1 in first row, and then 1,1 in second row, 1,2,1 in third
我完成了代码,并使用了我输入的值。但是我只是不知道如何使它以帕斯卡三角形的形式返回。
import math
n=int(input("choose your whole number"))
def J(n,r):
return math.factorial (n)//(math.factorial (n-r)*math.factorial (r))
def G(z):
for n in range (z+1):
for r in range (n+1):
print (J(n,r), end=" ")
G(n)
答案很简单:在一行上打印完数字后,需要换行。 只需添加一个空的打印语句(注意缩进):
def G(z):
for n in range (z+1):
for r in range (n+1):
print (J(n,r), end=" ")
print()
在打印每一行后,您需要添加换行符。 如果要填充金字塔的顶部(看起来像平衡的金字塔),则还需要打印偏移量:
def G(z):
for n in range (z+1):
# Pad the numbers so they appear in a pyramide
print(' ' * (z-n), end="")
for r in range (n+1):
# Add the ljust-bit to make sure the numbers
# gets an even spacing
print (str(J(n,r)).ljust(4), end="")
# New line after each row
print()
例:
选择您的整数5
输出:
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.