作成者カテゴリ 
公開
hikaru
11/29/2004 06:10 PM
クライアント
ノーツサーバノーツクライアントサーバOSクライアントOSネットワークプロトコル
6.x6.xWindows 2000 ServerWindows XP ProTCP/IP

int関数について

現在、標準価格と割引価格から割引率を求めるロジックを
ロータススクリプトにて作っています。
ただし、小数第3位以下切り捨て(マイナスの場合は切り上げ)
という条件があるため、以下のような式にしています。

int((1−割引価格÷標準価格)×10000)÷100

しかしテストしてみた結果、計算が合わない場合があることが
わかりました。例えば

割引価格:9000  標準価格:10000
の場合、10%という答えになるはずですが、実際には9.99%と表示
されてしまいます。この事象がどんな時に起こるのか調べたところ、

答えが22.42%以下になる場合に0.01%小さくなってしまうという
ことがわかりました。ただし、これは割引率が小数第二位までで
割り切れる場合です。

この現象はNotesのバグなのでしょうか?また、回避方法はどんな
ものがあるでしょうか?


[Previous Main Document]
int関数について (hikaru) * 現在地 *
. . Re: int関数について (松葉 優)
. . Re: int関数について → ■訂正です。済みません (松葉 優)
. . . . ありがとうございました^^ (hikaru)
. . . . . . Re: ありがとうございました^^ (松葉 優)
[Next Main Document]