【初心者歓迎】C/C++室 Ver.47【環境依存OK】at TECH
【初心者歓迎】C/C++室 Ver.47【環境依存OK】 - 暇つぶし2ch482:デフォルトの名無しさん
08/01/25 13:31:29
>>472
int main() {
double d = 3.55; // ここの数字を変更する
int n = d * 100;
cout << n << endl;
return 0;
}
でも上記プログラムでは、浮動小数点の規格上、

d = 0.55, 1.55, 8.55 =>それぞれ0.5500000....1, 1.55000...1, 8.55000...1
とかになるので、100倍しても減ったように見えたりしない。
d = 2.55, 3.55, 4.55, 5.55, 6.55, 7.55 =>それぞれ2.5499999...などとなるので、
100倍すると、(double)254.99999==>(int)254などとなってしまう。

と理解していたのですが、他の方も書いてくれてたように、Visual C++ 2008でやると
d=3.55の時、355と表示されました。(gccは354)






次ページ
続きを表示
1を表示
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch