2011年5月 9日

[ruby-list:48069] Re: 小数点つき時刻情報とTime#parse 【解決だと思う】

むらたです。

# 間違いの訂正だけ。

On 2011年5月9日月曜日 at 11:40, Shota Fukumori (sora_h) wrote:
> sora_h
>
> 2011/5/9 Mitsuo KASAHARA <m.kasahara13@xxxxx>:

> > 笠原です。
> >
> > 早速の助言ありがとうございます。
> >
> > 切り捨てて良いのか(*)分からなかったのですが・・・ご助言いただいた
> > BigDecimal
> > を使って以下のような感じで書いたら、ほしい結果が得られました。
>
> 切り捨て? BigDecimalは切り捨てじゃなくて、浮動小数点数とは違う演算方法で少数を表現しています。
>
> > (*)参考に教えて頂いたURLを熟読すれば分かるのかもしれないのですが、
> > 私にはチンプンカンプンでした。ごめんなさい。
>
> とりあえずFloat (浮動小数点数)には誤差がつきものだ、と覚えておけば大丈夫だとおもいます ;)

BigDecimal も Float と同類の浮動小数点数です。
ですから、Float と同様に、丸めによる誤差は発生します。
その点に注意して計算手順を設計してください。

BigDecimal が Float と異なるのは内部表現です。BigDecimal は必ず10進法で値を保持します。
ですから、10進法で表現する限り、基数変換による打ち切り誤差が発生することはありません。

--
Kenta Murata
Sent with Sparrow


投稿者 xml-rpc : 2011年5月 9日 13:38
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/103661
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。