喫茶XRAYトップページ

[スレッド全体
]

[4913] FormatFloatのおかしな動作返信 削除
2011/6/22 (水) 14:25:27 たてぐや
 皆さんこんにちは。
 先日来取りかかっていた印刷関係のプログラムが一段落して、またplPrevで
ガリガリコードを書く方に戻ったのですが、FormatFloat関数の結果がおかしい
のです。

     Textout(1250,1620,FormatFloat('###.#',y7 - y8));        //35.65
     Textout(1250,1750,FormatFloat('###.#',y9 - y10)); //14.55

 これだと関数の返り値はそれぞれ35.7と14.6になるはずです。ところが実際
に返ってくるのは35.6と14.5になってしまうのです。確認のために新しいプロ
ジェクトを作って試してみると正しく35.7と14.6が戻ってきます。なんとも理
解できません。なにかの絡みでFormatFLoatの返り値が四捨五入ではなくて切り
捨てになってしまっているのでしょうか?

[4921] Re:FormatFloatのおかしな動作返信 削除
2011/6/22 (水) 23:44:12 DEKO 〔HomePage
こんにちは。

端数の誤差があるので、
1.10倍
2.Trunc()
3.10で割る
したものを入れるか、あるいは...

小数点 1 位 (とか 2 位とか) までしか使わないのなら、
変数に Double ではなく Currency を使い、
FormatFloat() ではなく、FormatCurr() を使うとお望みの結果になると思います。


[▼次のスレッド]
INCM/CMT
Cyclamen v3.82