[Gauche-devel-jp] Re: 小数点以下n桁で四捨五入

Back to archive index

Shiro Kawai shiro****@lava*****
2006年 8月 21日 (月) 04:36:56 JST


無いです。一般的にやるなら10^n倍してroundして10^-n倍する
ことになります。厳密には10^-nする時に誤差が出ますが、
正規化数の範囲なら表示時に問題が起きることはないでしょう。

目的が表示のためならば、いずれformatに桁数指定のフォーマット
指定子を入れる予定です。それまでは例えばこんな感じでやって下さい。

(define (show-flonum num n)
  (receive (q r)
     (quotient&remainder (inexact->exact (round (* num (expt 10 n))))
                                         (expt 10 n))
    (format "~d.~v,'0d" q n r)))

--shiro

From: Katsutoshi Itoh <cut-s****@maste*****>
Subject: [Gauche-devel-jp] 小数点以下n桁で四捨五入
Date: Mon, 21 Aug 2006 01:37:36 +0900

> 伊東です。
> 文字化けしたみたいなんで再送します。
> Subject通りですが、小数点以下の何桁目かで四捨五入って関数はありますか?
> マニュアルの数値演算をみたところ、それっぽいのがないのですが、
> 自分でやるしかないのかな。
> _______________________________________________
> Gauche-devel-jp mailing list
> Gauch****@lists*****
> http://lists.sourceforge.jp/mailman/listinfo/gauche-devel-jp
> 



Gauche-devel-jp メーリングリストの案内
Back to archive index