[英]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.