C/C++の宿題片付けます 159代目at TECH
C/C++の宿題片付けます 159代目 - 暇つぶし2ch486:デフォルトの名無しさん
12/08/21 02:15:47.04
[1] プログラミング言語
[3] 環境
 [3.1] OS: Windows7
 [3.2] コンパイラ名とバージョン: Visual Studio2010 )
 [3.3] 言語: C++

int main(void){
 double d2, s2;
 int i;
 s2 = 0.0;
 d2 = 1.0/10000000.0;
 for(i = 0; i < 10000000; i++){
  s2 = s2 + d2;
 }
 printf("%f\n",s2);
 printf("%17.14f\n",s2);
 return 0;
}

上記のプログラムを実行すると,コマンドプロンプトには

1.000000
0.999999999750170

と出力される.
どちらも同じs2を出力しているのにもかかわらず,
表示させる桁数を変えるだけで出力内容が変わる理由,
および,2行目の方で計算結果が
1.000000000000000
とならない理由を述べよ.


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