所以問題就這樣產生了,我是新來的Python:無論如何去逆階乘函數?
高清factorial_cap(NUM):對於正整數ñ,n的階乘(記爲ñ!),是產品 從1到n的所有正整數。實現函數返回最小的
正數n使得n!大於或等於參數num。假設:num總是一個正整數。
# Examples
# factorial_cap(20) output is 4 since 3!<20 but 4!>20
# factorial_cap(24) output is 4 since 4!=24
# factorial_cap(1) output is 1 since 1!=1
# And here is what I got
def factorial_cap(num):
n = 1
for i in range (1,num+1):
n = n*i
我很確定這是正確的因子def函數。但我無法弄清楚,而不是獲得'總價值',我怎麼才能得到正確的輸出,正如我上面發佈的例子?
順便說一句,我應該在def結束時使用'return',還是在這種情況下無關緊要?
嘗試在for循環之後使用'return n'。同樣在你的循環中,將'range(1,num + 1)'改爲'range(2,num + 1)',你不必再次乘以1。 – Rolbrok
這是功課嗎? –
@BasSwinckels當然是。 –