- PR -

[基礎]固定小数と浮動小数について

投稿者投稿内容
NAL-6295
ぬし
会議室デビュー日: 2003/01/26
投稿数: 966
お住まい・勤務地: 東京
投稿日時: 2004-02-13 16:01
NAL-6295です。
引用:

ほむらさんの書き込み (2004-02-13 15:55) より:
ほむらです。
--------
るぱん氏
僕も同じようなコード書いてました_| ̄|○illi

以下Perlの場合です。
間違えてないはずなんですけどね〜
なぜか、1を超えてます(笑





初期値0.0001に0.0001を1万回足しているので1を超えます。
TomScissors
ベテラン
会議室デビュー日: 2003/06/05
投稿数: 79
投稿日時: 2004-02-13 16:13
ついでにjavaでもチャレンジ^^
double x = 0;
for (int i = 0; i < 10000; i++) {
x = x + 0.0001;
}
System.out.println(x);

0.9999999999999062

#桁マチガエテマシタ(汗
#二回目…。

[ メッセージ編集済み 編集者: TomScissors 編集日時 2004-02-13 16:20 ]
りばぁ
大ベテラン
会議室デビュー日: 2003/11/26
投稿数: 130
お住まい・勤務地: 愛知県
投稿日時: 2004-02-13 16:15
ぢゃん♪さんdecimalの例題ありがとうございました。

いろいろな言語での例が出ているので、C++(VC++)でもやってみました。

double dX;
int i;

dX = 0;
for (i=0; i<10000; i++)
{
dX = dX + 0.0001;
}

0.99999999999991
はにまる
ぬし
会議室デビュー日: 2003/12/19
投稿数: 969
お住まい・勤務地: 誤字脱字の国
投稿日時: 2004-02-13 16:44
単なる所感です。

 私も色々試してみました。
 そして、新人の頃を思い出しました....

 こう言う基本的な事って、とっても面白い!
ほむら
ぬし
会議室デビュー日: 2003/02/28
投稿数: 583
お住まい・勤務地: 東京都
投稿日時: 2004-02-13 16:53
ども、ほむらです。
------
NAL-6295氏へ
>初期値0.0001に0.0001を1万回足しているので1を超えます。
見直したときに気が付きました。。。。

結果として
0.999999999999906に
0.0001を足しているはずなのに
後一回足す(=10001回)と1.00009999999991 になります。
これがの誤差というやつですかねー

誤差といえば浮動小数点演算の場合、
'演算する二つの桁数の差にも注意しなければならない'ということがありましたね。
どんなものか忘れてしまいましたけど。。。
重要事項だった気がする^^;;;;
るぱん
ぬし
会議室デビュー日: 2003/08/01
投稿数: 1370
投稿日時: 2004-02-13 16:56
るぱんです。

ごめん。Microsoft。君は悪くなかった。
僕が間違っていたよ。許してくれ。(謎照笑)

さて、皆さんにお伺いさせて頂きます。
新人に説明する際にどの様に説明するでしょうか?

1.固定小数点とは?
2.浮動小数点とは?
3.その違い、使い方について

宜しくお願いします。
はにまる
ぬし
会議室デビュー日: 2003/12/19
投稿数: 969
お住まい・勤務地: 誤字脱字の国
投稿日時: 2004-02-13 17:02
引用:

ほむらさんより:
誤差といえば浮動小数点演算の場合、
'演算する二つの桁数の差にも注意しなければならない'ということがありましたね。
どんなものか忘れてしまいましたけど。。。
重要事項だった気がする^^;;;;


桁数の大きい数と桁数の小さい数を加算した場合、
桁数の小さい数が無視される現象です。

これは、浮動小数の仮数部のバイト数によって決まります。
でも、小数の近似値表示の問題に比べれば、屁では無いと
今は、思います...
NAL-6295
ぬし
会議室デビュー日: 2003/01/26
投稿数: 966
お住まい・勤務地: 東京
投稿日時: 2004-02-13 17:12
引用:

るぱんさんの書き込み (2004-02-13 16:56) より:
るぱんです。

ごめん。Microsoft。君は悪くなかった。
僕が間違っていたよ。許してくれ。(謎照笑)

さて、皆さんにお伺いさせて頂きます。
新人に説明する際にどの様に説明するでしょうか?

1.固定小数点とは?
2.浮動小数点とは?
3.その違い、使い方について

宜しくお願いします。



NAL-6295です。

1と2は真実をそのまま伝えれば良いかと思います。
3は1と2の説明をした時点で達成されるものと考えます。

スキルアップ/キャリアアップ(JOB@IT)