NormalizeDoubleのパラドックス - ページ 3

 
まだ要領を得ないようですね。そうであれば、こんな質問はしないはずです。
 
pavlick_:
まだ論点がわかっていないようですね。そうであれば、このような質問はしないはずです。

よくわかりました。

MQLの開発者は、数表記の処理を怠りすぎていた

 
transcendreamer:

よくわかりました。

MQLの開発者は、数値表現の処理をするのが面倒だった。

では、NormalizeDouble(0.132, 1)は正確に0.1を出力する必要があるのでしょうか?
 
pavlick_:
では、NormalizeDouble(0.132, 1)は正確に0.1を生成する必要があるのでしょうか?

NormalizeDouble 浮動小数点数を指定された精度に丸める

予測可能で直感的に動作することが論理的である。

 
transcendreamer:

NormalizeDouble 浮動小数点数を指定された精度で丸めます

予測可能で直感的に動作する機能であれば、意味があります。

なるほど、サービスデスクに手紙を書かないといけないんだ、電卓のことを伝えるのを忘れないでね。オタク趣味を非難された後は、説明する気も失せてしまう。
 
pavlick_:
なるほど、サービスデスクに手紙を書かないといけないんだ、電卓のことも忘れずに教えてね。オタク趣味を非難された後は、説明する気も失せてしまう。

自分以外がオタクであることを非難したわけではありません。

そして、開発者がそれを無視することは間違いないでしょう。

アプリケーション層とシステム層を一緒にするのは大きな間違いです。

これは、カスタムクラスやライブラリによって部分的に補われていますが、多くの場合、その逆です。

例えば、これらのレベルはtradestation easy languageで区切られており、ユーザーは数値の2進数表現などを意識することはありません。

 
transcendreamer:

よくわかりました。

MQLの開発者は、数値表現の処理をするのが面倒だった。

これでは、計算速度が大幅に低下してしまいます。
 
Integer:
これでは、計算速度が大幅に低下してしまいます。

いいえ、違います。

IEEEで定められた数値をそのまま保存させる。

バイナリ形式を使えるように「包む」機能の話だけです

例えば、0から始まる注文の番号付けなど、言語には「間違い」「非論理的」なことがたくさんあります。

もちろん、言語開発者が内部のインデックスを正しく動作させるために、この方が簡単だったということは理解できますが、人は機械ではなく、1から数えます。

 
transcendreamer:

言語開発者にとって、内部のインデックスを合わせるのが簡単だったというのはわかるが、人は機械ではない、人は1から数えると

普通の人は0から数えます。
 
C-4:
普通の人は0から数えます。