C# における小数の丸めについて
C# で除算を実行すると、結果が予期せず切り捨てられる場合があります。この動作は、次の例のように、整数を除算するデフォルトの演算である整数除算に由来します。
double i; i = 200 / 3;
この場合、実際の除算結果は 66.66666~ であっても、結果は 66 になります。 。この切り捨てを回避するには、別の除算手法を使用できます。
1 つの方法は、オペランドの 1 つを double に明示的にキャストし、double 除算演算子を使用して強制的に除算を実行することです。
i = (double)200 / 3;
または、定数の 1 つを double として宣言することもできます。
i = 200.0 / 3;
または、 double リテラルを示すサフィックス d :
i = 200d / 3;
定数の 1 つを double として宣言すると、double 除算演算子が確実に使用され、それによって整数の丸めが防止され、10 進数値が保持されます。
以上がC# が整数の除算を切り捨てるのはなぜですか?それを防ぐにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。