忍者ブログ
なかまくらのものがたり開拓日誌(since 2011)

factrial confusion

なかまくらです。

ネタ元(http://nlab.itmedia.co.jp/nl/articles/1205/02/news017.html




40 - 32 ÷ 2 = ?

...= 4!

そう、4の階乗です。しかしね。

四則演算がよく分かってなくて、

(40-32)/2 = ?

と計算すると、4。

ほほう。


じゃあ、実際にそういう組み合わせの解はいくつあるの? と考えてみる。

つまり、


(m ÷ n) / a = b

且つ

m - n / a = b!


これが、なかなかうまい具合に文字式で表せないので(行列は苦手だ・・・)、プログラムを組んで、100までの総当たりしてみる。

Rubyで組んだプログラムは、一番下に載せてます。(ただし、2の階乗以下は多すぎるので除外)

・・・計算が終わる気配がない(笑)

結果はおって報告する! ・・・かも




ででーん。計算終わり。

さて。結果は・・・


m n a b
25 5 5 4
30 18 3 4
40 32 2 4

でしたー。おもしろー。




if ARGV.length<1
  print "Usage: kumiawase.rb <max>\n"

  exit
end



max=ARGV[0].to_i    




print("0\n")

open("kumiawase.out","w"){|out|

out.print "m n a b","\n"


for m in 1 .. max


print("\n---",m,"\n")

    for n in 1 .. max


#print(n," ")
            for a in 1 .. max

#print(a,"\n")

                    bk = 1

                    for b in 1 .. max

                        bk = bk*b
#print("\n",bk,"\n")

                        if b >= 3

                            if b == (m - n).quo(a)

                                if bk == m - n.quo(a)

                                    out.print m," ",n," ",a," ",b,"\n"

                                end
                            end                            

                        end


                    end


            end


    end





拍手[2回]

PR