喫茶XRAYトップページ

[▲前のスレッド]

[8097] 記事更新返信 削除
2014/10/12 (日) 21:34:12 Mr.XRAY
[890_計算誤差 ( 数値計算の誤差 ) と多倍長演算]
の,四捨五入関係の記事を更新
http://mrxray.on.coocan.jp/Delphi/plSamples/890_CalcError.htm#06


[8119] Re:記事更新返信 削除
2014/10/15 (水) 19:56:20 Mr.XRAY
「四捨五入」も「放置」か... ?  放置が続くなぁ
まっ,レスの仕方と内容にも問題があるかも知れないので,
しょうがないか...
秋は終りだというのに,なんか空しい...


[8125] Re2:記事更新返信 削除
2014/10/16 (木) 10:37:14 taki
▼ Mr.XRAYさん
> 「四捨五入」も「放置」か... ?  放置が続くなぁ
> まっ,レスの仕方と内容にも問題があるかも知れないので,
> しょうがないか...
> 秋は終りだというのに,なんか空しい...


放置じゃなくて、完治…じゃなくて完了ですね。
SimpleRoundを使おうとしたら、オーバーロードの定義が無いと
叱られました。

まあ、10進演算でも3とか7で割ると割り切れないから
丸め処理の問題は続くのかもしれませんが。


[8126] Re3:記事更新返信 削除
2014/10/16 (木) 16:53:40 Mr.XRAY
▼ takiさん

あっ,チョンボだ.チョンボ.TBcd 使ってる (笑い)

> 放置じゃなくて、完治…じゃなくて完了ですね。

完了ですか... そういうことにしておきますか.

> SimpleRoundを使おうとしたら、オーバーロードの定義が無いと
> 叱られました。


ん ?

> まあ、10進演算でも3とか7で割ると割り切れないから
> 丸め処理の問題は続くのかもしれませんが。


わお !! こういうことを忘れていました.いただきま〜す.
これ,記事に追加しておこーとっ !!

ところで,この図いいですね.設計時のフォームが見えて,
結果のフォームが見えて,
背景にコードが見える.
こういうのも気づきませんでした.プレゼンテーションに使えますね.
なるほどねぇ.こういう手もあったか....


[8127] Re4:記事更新返信 削除
2014/10/16 (木) 19:05:43 taki
▼ Mr.XRAYさん

> あっ,チョンボだ.チョンボ.TBcd 使ってる (笑い)

はい。マスターのおかげでDelphiでBCDが使えることを知りました。
あ、Delphi XE4 Starter ですが。

> > SimpleRoundを使おうとしたら、オーバーロードの定義が無いと
> > 叱られました。
>
> ん ?
>


SimpleRoundはまだTBcdには対応していないのだと思います。

SimpleRoundが使えないので中断していた誤差の検証ですが…。

数値を数字に変換するFormatBcdを使っているので、FloatToStr同様に
本当に179.935000…かは疑わしい。
そこでシンプルに等号を使って比較してみました。

これで、TBcdを使った方は演算での誤差は無い事がわかります。


[8128] Re5:記事更新返信 削除
2014/10/16 (木) 20:07:53 Mr.XRAY
▼ takiさん

> これで、TBcdを使った方は演算での誤差は無い事がわかります。

なるへそ.BCD 演算で確認するというわけですか.
これも何かの時にレスで使えますわ.

> SimpleRoundが使えないので中断していた誤差の検証ですが…。

確認していませんが,SimpleRountTo に相当するのは,BCD 演算では,
多分,

[FmtBcd.NormalizeBcd]
http://docwiki.embarcadero.com/Libraries/XE7/ja/Data.FmtBcd.NormalizeBcd

[FmtBcd.BCDRoundTo]
http://docwiki.embarcadero.com/Libraries/XE7/ja/Data.FmtBcd.BCDRoundTo

あたりかも知れません.


[8132] 長い桁数の演算用ユニット類返信 削除
2014/10/17 (金) 21:07:50 Mr.XRAY
記事を追加しました.

[長い桁数の演算用ユニット類]
http://mrxray.on.coocan.jp/Delphi/plSamples/890_CalcError.htm#10


[8133] Re:長い桁数の演算用ユニット類返信 削除
2014/10/18 (土) 14:56:39 Mr.XRAY
> [長い桁数の演算用ユニット類]
> http://mrxray.on.coocan.jp/Delphi/plSamples/890_CalcError.htm#10


図13 の上のリンク Delphi For Fun Programs をクリックすると,
いろいろなサンプルの目次があります.
中々面白いサンプルもあります.
DFF Library が必要なサンプルがありますが,DFF Library の利用方法は
簡単です.解凍したら,そのフォルダにパスを通すだけで利用できます.
興味ある方は是非お試しください.

当サイトのサンプルとは違い,コードは全てダウンロードする方式です.
[Delphi Techniques] にも興味あるサンプルがあります.
[Delphi Techniques] はページの先頭部分をクリックして移動できます.


[8136] Re2:長い桁数の演算用ユニット類返信 削除
2014/10/20 (月) 22:21:08 Mr.XRAY
[長い桁数の演算用ユニット類]
http://mrxray.on.coocan.jp/Delphi/plSamples/890_CalcError.htm#10

以降の記事を更新しました.
記事で紹介しているライブラリを使用した,簡単なサンプルを作成しました.
UP しているファイルに添付しました.


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