N的階乘拓展

2021-06-19 16:28:40 字數 545 閱讀 2830

#coding:utf-8

'''n的階乘定義為:n!=n×(n-1)×……×2×1

請編寫乙個程式,輸出n的階乘的十進位制表示中從最末乙個非0位開始自低位向高位數的第k位。

現在給你n和k(0<=n<=10000,1<=k<=5),請你輸出要求的數字(保證存在)。

例如:n=5,k=2,則輸出1 note:(5!=120);

n=8,k=3,結果為0 note:(8!=40320)

'''def main(n):

g=lambda k,j:k*j

#注意此處是range(1,n+1)

return reduce(g,range(1,n+1))

def getvalue(n,k):

total= main(n)

print total

s=str(total).rstrip('0')

print s[-k]

if __name__ == '__main__':

getvalue(5,2)

N的階乘 大數階乘

輸入n求n的階乘的準確值。input 輸入n 1 n 10000 output 輸出n的階乘 首先,要確定n的階乘的數字大概有多少位,這樣便於我們去選擇合適的演算法。階乘 當n 10000時,上式值為35660 已經向上取整 所以接受 include include include include ...

高精度N的階乘 N!

題目 輸入乙個正整數n 0 include include includeusing namespace std int a 2005 int main if n 1 cout 1 else 這裡來說明幾個變數的意義 1.sum 是位數和數i的乘積與進製數t之和 2.a j 儲存位數 3.t代表進製...

計算n的階乘

c語言學習初期,相信你肯定編寫過 計算n的階乘 吧!怎麼樣,是不是覺得過於簡單了呢?哈哈,就讓我們再次回溫這道題,詳解它的編寫過程 從最初的構思到具體的設計,體會乙個腦海中的idea切切實實轉化為 的奇妙過程 下面進入正題 說明 本題我們暫時不 溢位問題,所以就拿 計算5的階乘 舉例 思路構想 計算...