C# で四捨五入せずに小数点以下を切り捨てる
指定された小数点以下の桁数での数値の切り捨ては、さまざまなプログラミング シナリオにおいて非常に重要です。値 3.4679 を四捨五入せずに 3.46 に切り捨てる必要がある状況を考えてみましょう。
一般的なアプローチは、特定の丸めモードで Math.Round()
関数を使用することです。ただし、提供されたコードが示すように、MidpointRounding.ToEven
または MidpointRounding.AwayFromZero
を使用すると、丸めのため 3.47 になります。
より正確な方法は、数学的演算を使用して値を切り捨てることです:
<code class="language-csharp">value = Math.Truncate(100 * value) / 100;</code>
このメソッドは、値に 100 を掛けて切り捨て、次に Math.Truncate()
を使用して小数点以下を削除し、最後に 100 で割って元の比率に戻します。四捨五入せずに小数点以下を効果的に切り捨てます。
注:
3.4679 のような分数は浮動小数点表記では正確に表現できないため、結果が若干異なる場合があることに注意してください。高精度に表現するには、浮動小数点数の代わりに 10 進数タイプを使用することを検討してください。
以上がC#で小数点以下の桁を四捨五入せずに切り捨てるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。