私は浮動小数点を使ったことは一度もありませんでしたが、現在作業中のプロジェクトではそれが必要です。私は数年前に学んだ奇妙な問題を抱えていますが、なぜこれが起こるのか忘れてしまっています。なぜ私の浮動小数点値は精度とドロップ小数点を失うのですか?以下のコード例
浮動小数点数を掛けたり追加したりした後の結果は、その結果とは異なります。
はここに私のコードです:短い、実数で
void main()
{
//Example 1 - ERROR
float a=16937.6;
float b=112918;
float total=b+a;
cout<<total<<endl; //Outputs 129896 - rounds up and loses decimal (129855.6)
//Example 2 - Error
float c=247.82;
float d=9995.2;
float total2=c+d;
cout<<total2<<endl; //Outputs 10243 - loses all decimals (10243.02)
system ("pause");
}
http://en.wikipedia.org/wiki/Floating_point精度の問題上のセクションは、あなたが探しているものです。 – Almo
いいえ、私はこのケースで間違って出力されていると思います。 – user1147223