codewar Big Factorialの解答 

みなさん、少しですが久し振りです。codewarをやるのは少し時間が空いたのですが以前は8kyu、つまり初級を中心にやっていたのですが今回からは7kyuを中心にやっていこうと思います。どうしてもわからない問題があったら、解答を見て復習したり他人のコードを見てまた解いたり書いたりしています。
この問題は階乗です。再帰関数を使えば、簡単なのですが大きい数字だと処理できないそうです。そのために他の方法でやるしかありません。もしnが0の場合は1を返す。 0より小さい場合はNoneを返し他の場合は階乗の計算を行います。
def factorial(n):
    if n == 0:
      return 1
    elif n < 0:
      return None
    i = 1
    while n >= 1:
      i = i * n
      n = n - 1
    return i

ライブラリの方法

pythonではライブラリもあるようです。pythonはライブラリが豊富で非常に便利ですね。
import math

def factorial(n):
    if n >= 0:
        return math.factorial(n)



注目記事

[超簡単]Webライティングの始め方!

みなさん、こんにちは。中川(@ naka33321 )です。最近では副業が日本でも徐々にですが定着しつつあるなかで、副業にチャレンジしてみようという人は今では少なくないでしょう。副業は色々なやり方はあるのですが、手頃に始めやすいものはWebライティングでしょう。 デザ...

人気記事