• 締切済み

ruby の BigDecimal を 使った計算

ruby の BigDecimal を 使った計算 をしたいです。 そこで 1/7をBigDecimalでどうやって計算するのか見せてほしいです。 精度を1000桁でお願いします。

みんなの回答

  • notnot
  • ベストアンサー率47% (4900/10358)
回答No.5

Rubyの入門書は何か読んでますか? BigDecimalライブラリを使うという話なので、 require "bigdecimal" を書かないといけません。

  • notnot
  • ベストアンサー率47% (4900/10358)
回答No.4

>”1”と”7”のところが青くなりました。 意味がわかりません。 結果は望み通り表示されましたか?

aaaiiyuda
質問者

補足

big1=BigDecimal("1",1000) big7=BigDecimal("7",1000) puts big1/big7 これを計算させましたが、NoMethodErrorとなり表示されませんでした。

  • koko_u_u
  • ベストアンサー率18% (216/1139)
回答No.3

>puts (1.0 / 300)**600 >これを計算させると。0.0になってしまいます。 そうでしょうね。

  • notnot
  • ベストアンサー率47% (4900/10358)
回答No.2

簡単には、数値をすべて BigDecimal("1",1000) のように値と有効桁数で表して、あとは普通に計算します。 big1=BigDecimal("1",1000) big7=BigDecimal("7",1000) puts big1/big7 きちんとやるにはマニュアルを参照してください。マニュアルを理解するには「有効数値とはどういうことか」の知識が要りますが、そのあたりは大丈夫ですよね。 http://www.ruby-lang.org/ja/man/html/BigDecimal.html

aaaiiyuda
質問者

補足

最後に、この文章をルビーで計算したら ”1”と”7”のところが青くなりました。 これは何か設定が必要なのでしょうか?

  • koko_u_u
  • ベストアンサー率18% (216/1139)
回答No.1

何がわからないかをもっと具体的に補足にどうぞ

aaaiiyuda
質問者

補足

puts (1.0 / 300)**600 これを計算させると。0.0になってしまいます。 これを1000桁まで計算させたいです。

関連するQ&A