需要創建一個函式來評估特定數字是否為階乘。
為此,我構建了以下內容,并且正在運行
def is_factorial(n):
i = f = 1
while f < n:
i = 1
f *= i
return f == n
但是,現在我需要使其遞回,但我正在努力解決它。
到目前為止,我已經設法做到以下幾點
def isFactorial(m):
def factorial(x):
if x == 0:
return 1
else:
return x * factorial(x - 1)
if m == 1:
return True
elif m == 720:
return True
else:
factorialnumbers = []
感謝任何幫助。
編輯:抱歉,但我忘記指定該函式應僅將一個整數作為輸入。
uj5u.com熱心網友回復:
def is_factorial(n, i=1):
n = n/i
if n == 1:
return True
if n < 1:
return False
i = 1
return is_factorial(n, i)
print(is_factorial(24))
uj5u.com熱心網友回復:
你可以做
def isfact(m,n):
def fact(n):
if n==1 or n==0:
return 1
else:
return n*fact(n-1)
if fact(n) == m:
return True
else:
return False
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/364522.html
