Hatena::ブログ(Diary)

はけの徒然日記 このページをアンテナに追加 RSSフィード

2005 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2006 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2007 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2008 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2009 | 01 | 02 | 04 | 05 | 08 | 09 | 10 | 12 |
2010 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 10 | 11 |
2011 | 01 | 02 | 03 | 04 | 11 | 12 |
2012 | 02 | 03 | 05 |
2014 | 02 | 03 | 04 | 05 | 12 |
2015 | 05 | 07 | 08 | 09 | 10 | 11 | 12 |
2016 | 01 | 02 | 04 | 05 | 08 | 09 | 11 | 12 |
2017 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 |

2006-09-05(Tue)

BigDecimal

Ruby勉強

可変長浮動小数点計算機能ライブラリ、任意の有効桁数を指定できる。

数字はStringで与える。下では結果もStringで取得。

require 'bigdecimal'
require 'bigdecimal/math'
include BigMath

def my_div(a, b)
 (BigDecimal(a.to_s,100) / BigDecimal(b.to_s)).to_s
end
def my_sqrt(a)
 sqrt(BigDecimal(a.to_s), 100).truncate(50).to_s("F")
end

p my_div(1,3)
# => "0.3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333E0"
p my_sqrt(2)
# => "1.41421356237309504880168872420969807856967187537694"
p Math::PI(50).to_s
# => "0.3141592653589793238462643383279502884197169399375105820974944592309049629352442819E1"

投稿したコメントは管理者が承認するまで公開されません。

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証

トラックバック - http://d.hatena.ne.jp/hake/20060905/p2