- - PR -
[基礎]固定小数と浮動小数について
| 投稿者 | 投稿内容 | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2004-02-13 13:12
この様な感じで、ご指摘を頂きたいのです。 >投稿日時: 2004-02-13 11:41で説明しているのですが・・・ 私の見解の2番(内部は整数で保持し、利用時に10の累乗で計算する方式) に関する技術文書と認識しました。 ですが、 1番の固定小数点と3番の浮動小数点について記述されておりませんし、 2番の方式について、計算誤差がでる事は記述されておりません。 >変数に代入する時点では、どんな型でも誤差は出ませんよ? この定義に対し、違うと考えます。 1番の「固定小数点」と3番の「浮動小数点」では、近似値しか出来ません。 10進数の0.1を 2進数で表すと 0.0001100110011... となります。 誤差が出来ます。 >計算する時にはどんな型を使っても誤差が出る可能性はあります。 1番の「固定小数点」と3番の「浮動小数点」は、計算の要素値自体が 近似値である可能性がある為、理解出来ますが、 2番の方式で誤差がでる計算式を1つ提示して見てください。 # 編集-追記 ぢゃん♪さんと被っている。しかも例題値が一緒 ^^; しかも、その後に unibon さんから可能との御答えが、、、 [ メッセージ編集済み 編集者: はにまる 編集日時 2004-02-13 13:16 ] | ||||||||||||
|
投稿日時: 2004-02-13 13:25
まず、ぼくが、「勘違いしている」と指摘している意味から分かっていただく 必要があるようですね。 MSDNの内容をよく読んでいただきたいですが、はにまるさんのおっしゃっているのは、 プログラムの内部で値をどういうふうに持っているかということです。 つまり、浮動小数と固定小数の違いは、NAL-6295さんがおっしゃっている、
だけなんです。 なので、1〜3で挙げられていることと、小数の計算時に誤差が発生すること はまったく関係ないということを分かって欲しかったのですが。 ※まずここまでで切りますが、他の方の意見やはにまるさんの考えを お聞かせください・・ ※「浮動小数と固定小数の違い」についてのスレッドですから、本来、 誤差の話自体が関係ないと思いますが^^; | ||||||||||||
|
投稿日時: 2004-02-13 13:28
VB6.0は内部でVariantなのかなぁ・・・?
で、結果は1が返ってきちゃうなぁ・・・。 Microsoftめ・・・また内部で何かやってるな。。。 まぁ、僕自身がCのコードを実際に打って確認してないんで、どなたか確認していただけると 収束できると思いますが・・・。 [ メッセージ編集済み 編集者: るぱん 編集日時 2004-02-13 13:31 ] | ||||||||||||
|
投稿日時: 2004-02-13 13:30
ども、ほむらです。
------ はにまる氏へ
その前にひとつ、近すぎて忘れていると思いますが。。。 固定と浮動という前提を忘れていませんか? >「内部は整数で保持し、利用時に10の累乗で計算する方式」は とあった場合に利用時に何乗するのか固定で決まっていれば 固定小数点。 逆にデータとして持っていて何乗するのか計算直前にならないと確定しなければ 浮動小数点です。 小数点の位置がころころかわること、これが浮動小数点の特徴です。 #失礼、かぶりました^^;; [ メッセージ編集済み 編集者: ほむら 編集日時 2004-02-13 13:32 ] | ||||||||||||
|
投稿日時: 2004-02-13 13:33
るぱんさん、フォローありがとうございます。
ぼくが言いたかったことなどは、そのとおりです。 ぼくのボキャブラリーが少ないために、表現がまずかったことは お詫びします^^; えと、例を出せば、
としてみて、変数の中身を見ていただければ一目瞭然と言うことですね。 (回りくどいこといわずに、こういう例題にすればよかったです・・) | ||||||||||||
|
投稿日時: 2004-02-13 13:37
るぱんです。
僕は技術者なんで、実際に書くコードが日本語の変わりになってくれるかと。(爆) 指摘する時はコードメインで。 設計ならお絵かきメインでどうでしょう?(笑) | ||||||||||||
|
投稿日時: 2004-02-13 13:41
誤差が累積するから顕在化するんですよ、このケースは。 ちゃちゃっとExcelのVBAで作ってみました。
結果は、0.999999999999906です。 | ||||||||||||
|
投稿日時: 2004-02-13 13:51
そうです!そこが重要なんです!意見が食い違っている場合、 前提条件が異なっている事もありますし、 私の知識が間違っているのであれば、それを訂正する知識が欲しいのです。 結果として、りばぁさんの意見、理解出来ました。 今回は互いの前提条件が異なっている事が問題でしたね... ご苦労をおかけ致します。
このスレッドは前スレッドのからの流れのつもりです。 強いて言えば、 「型に対して誤った知識を持ち、誤った使い方を注意する」事の方が、 「内部構成の知識」より重要と私は思います。 無論、何故、注意しなければ行けないか?をより良く理解する為にも 内部構造の話も重要です。 特に今回は、私の用語定義があやふやだったので、 混乱を招いていますが。。。 ^^; | ||||||||||||
