2016-04-07 139 views
-4

我必須在python中編寫一個返回階乘基數之和的程序。計算數字階乘基數。 Python

例如
2301讀取階乘基數的十進制值是2 × 4! + 3 × 3! + 0 × 2! + 1 × 1! = 67

它必須是這樣的
輸入整數:67
小數67的階乘基地等於2301。

自從我開始編程以來,我無法想出任何解決方案。我真的很欣賞任何幫助。

+5

「我不能拿出任何解決方案,因爲我剛開始編程」是沒有意義的。開始編程的每個人都必須從某個地方開始,並且選擇介紹課程中的問題,以便您可以提出解決方案 - 但只有在您開展工作時,嘗試一些東西,解決問題等等。 *不*發佈到堆棧溢出而不顯示任何努力。 –

+0

看起來您希望我們爲您編寫一些代碼。儘管許多用戶願意爲遇險的編碼人員編寫代碼,但他們通常只在海報已嘗試自行解決問題時才提供幫助。證明這一努力的一個好方法是包含迄今爲止編寫的代碼,示例輸入(如果有的話),期望的輸出以及實際獲得的輸出(控制檯輸出,回溯等)。您提供的細節越多,您可能會收到的答案就越多。檢查[FAQ]和[問]。 –

+0

我同意,這也看起來像功課。 –

回答

1

不知道我是否真的應該回答這個問題...

import math 

num = 2301 
fact_base = sum([int(str(num)[pos]) * math.factorial(len(str(num)) - pos) for pos in range(len(str(num)))]) 
print(fact_base) 
+0

像這樣的答案並不能真正幫助OP,因爲他們不太可能理解它。另一方面,如果他們試圖把它作爲功課,教授幾乎肯定會知道他們沒有寫出來,所以發佈這樣的東西不太可能導致剽竊,所以在這個意義上說它是無害的,它可能有助於其他誰想要了解一個好的Pythonic方法的基本問題。 –

+0

如果一個剛剛開始交學生的學生 - 他們可能被指控爲作弊(技術上他們正在使用某人的工作)。 –