BLOGTIMES
2012/02/28

Ruby で任意精度の計算をする

  ruby  programming 
このエントリーをはてなブックマークに追加

ちょいと任意精度で計算したい用事ができたので、 Ruby で簡単なスクリプトを書いてやっつけました。
忘れないうちにやり方をメモ。基本的には BigDecimal*1 を使えばいいみたいです。

irb(main):001:0> require "bigdecimal" => true irb(main):002:0> ( BigDecimal("1234") / BigDecimal("555") ).to_s(10) => "0.2223423423 4234234234 2342342342 3423423E1" irb(main):003:0> BigDecimal("1234").div(BigDecimal("555"),10).to_s(10) => "0.2223423423E1" irb(main):004:0> BigDecimal("1234").div(BigDecimal("555"),100).to_s(10) => "0.2223423423 4234234234 2342342342 3423423423 4234234234 2342342342 3423423423 4234234234 2342342342 3423423423E1"

div に有効桁数を渡してあげると、こんな感じで任意精度の計算が出来ます。


トラックバックについて
Trackback URL:
お気軽にどうぞ。トラックバック前にポリシーをお読みください。[policy]
このエントリへのTrackbackにはこのURLが必要です→https://blog.cles.jp/item/4800
Trackbacks
このエントリにトラックバックはありません
Comments
愛のあるツッコミをお気軽にどうぞ。[policy]
古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
コメントはありません
Comments Form

コメントは承認後の表示となります。
OpenIDでログインすると、即時に公開されます。

OpenID を使ってログインすることができます。

Identity URL: Yahoo! JAPAN IDでログイン