2016年4月12日火曜日

160412(3)

Ruby


Zagier's problems(9)

m = 7 のとき、n = 26 と非常に小さいので、計算結果を残しておく。

def f(n)
  return 1 if n <= 1
  (1..n).inject(:*)
end

def u(m, n)
  i = (0..n).inject(0){|s, k| s + f(m * n + k).to_r / (f(m * n - m * k) * f((m + 1) * k + 1))}
  j = i.denominator
  return i.to_i if j == 1
  i
end

(0..30).each{|i| p u(7, i)}

出力結果
1
(10/9)
(12173/17)
(1248801/25)
(301500013/33)
(47068369985/41)
(8954530878371/49)
(3616616044683269/133)
(1961307671216691883/455)
(347559287308451008967/511)
(62140698954891656421190/567)
(11067012620150133414337963/623)
(1974249851740493659523015623/679)
(351951838629631165144467430043/735)
(62758674512597558743883263610439/791)
(11189954786512984420393651687875941/847)
(1995221638416328054526045855047718383/903)
(355758150892408390230576747504182000459/959)
(9061863319798195260695461954546882409601/145)
(11310428571396007320666762754450306819217990/1071)
(2016696277341169111795798300521062697437592955/1127)
(51369491523983014450494440607772389176868751201/169)
(64115828922334414331872309869748783481829146350651/1239)
(2286429018304177791698795890230227079657492052657499/259)
(2038402280444992115457711912936851219673442797789253973/1351)
(121152109309790470247346317829552539155749638441881956677/469)
44296575390001702400727108630616445125994678211370369389
(11555181554561385935252392348829213521467268425671827881007431/1519)
(27471209267637854163021521429848295616923998565176365935567890/21)
(367367999320644246065591385425231039259955915933569408248236141643/1631)
(9357623280737482868324329801122570121966749493440849706709392542081/241)

0 件のコメント:

コメントを投稿

注: コメントを投稿できるのは、このブログのメンバーだけです。