0
Fixnumクラスの階乗法を定義しようとしていますが、このFixnumを自分のメソッドの引数として渡す方法がわかりません。 は、私はそれが正しくないだろう知っていたものの、そのRubyでメソッドの引数としてオブジェクトを渡す方法
def Fixnum.factorial(n)
n > 1 ? n * factorial(n-1) : 1
end
ような何かを書くしようとしていました。それで、この番号にアクセスするための「この」予約語がありますか?このような
愚か?どうして? ( '*'が '+'ならば、それは愚かでしょう、それは私が知る限り)。 – steenslag
再帰は必要ありません。単純なループはうまくいくでしょう。 –
よく、数学的には正しいが、計算上は「ばかげて」(=非常に非効率的である)。 TCOのある言語で使用されるテールコールファクタリはOKです。 Rubyでは '(2..n).inject(1、:*)'と書いています。 – tokland