Ruby 初心者スレッド Part 23at TECHRuby 初心者スレッド Part 23 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト119:デフォルトの名無しさん 08/12/01 10:57:38 書籍「Ruby レシピブック第二版268の技」のP.289のスクリプトを動かしたんですが、 結果がちょっとおかしいです。 class Numeric def round_n(nth) num = self*(10**(-nth)) return num.round()*(10**nth) end end num = 438.1728 p num.round_n(-3) #=> 438.173 結果は↓ Rational(438173, 1000) 何がいけないんでしょうか?よろしくお願いします。 120:デフォルトの名無しさん 08/12/01 11:14:40 >>119 何がどうおかしいと思うの? 121:119 08/12/01 11:26:11 >>120 本来"438.173"と表示されるはずが"Rational(438173, 1000)"と表示される辺りです。 Rational(438173, 1000)と表示されるのが正しいのでしょうか? 122:デフォルトの名無しさん 08/12/01 12:08:37 >>121 それは、実行前のどこか (irbで前に実行したスクリプトか、あるいはrequireで読み込んだ野良ライブラリのどこか)で require 'rational' をしている 何もしてない状態ではFloatが返る 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch