2016-04-29 10 views
-1

を実行したときに、私はこのコードを実行します。なし出力、私は私のコード

def fact(i): 
    j = 1 

    while i >= 1: 
     j = i * j 
     i -= 1 
i = input("input the number: ") 
print (fact(i)) 

と、この出力を参照してください。

input the number: 6 
None 

なぜ私の出力Noneはありますか?なにが問題ですか?

+2

は、なぜあなたも* "なし" *をコピーしていないし、貼り付けることはできませんか?あなたは*何も返さないので結果はありません。* – jonrsharpe

答えて

0

結果のを印刷しています。関数が結果を返すには、returnステートメントを使用する必要があります。何も返さなければ、関数はautomaticaly return Noneになります。あなたの関数がjを返すようにしたいと思うので、関数の最後にreturn jを追加する必要があります。動作するはず

def fact(i): 
    j = 1 
    while i >= 1: 
     j = i * j 
     i -= 1 
    return j 

i = input("input the number: ") 
print (fact(i)) 
+0

ありがとうございます。 –

関連する問題