C ++バージョンと一致するようにC#でfloor(x)の実装を探しています。
floor of 2.3 is 2.0
floor of 3.8 is 3.0
floor of -2.3 is -3.0
floor of -3.8 is -4.0
C ++レビューアが私のコードをチェックするfloor
ので、彼が(最後に残っている)髪の毛を抜かないように、C#でどのような実装が合理的ですか?
C ++バージョンと一致するようにC#でfloor(x)の実装を探しています。
floor of 2.3 is 2.0
floor of 3.8 is 3.0
floor of -2.3 is -3.0
floor of -3.8 is -4.0
C ++レビューアが私のコードをチェックするfloor
ので、彼が(最後に残っている)髪の毛を抜かないように、C#でどのような実装が合理的ですか?
Mathクラスを使用できます。の多くのオーバーロードされた形式がありますMath.Floor
簡単な使用法:
Math.Floor(2.3) // == 2.0
Math.Floor(3.8) // == 3.0
Math.Floor(-2.3) // == -3.0
Math.Floor(-3.8) // == -4.0
を使用するだけMath.Floor
です。C ++と同様に、負の無限大に向かって丸められますfloor
。ドキュメントから:
このメソッドの動作は、IEEE標準754のセクション4に従います。この種の丸めは、負の無限大への丸めと呼ばれることもあります。つまり、dが正の場合、小数部分は切り捨てられます。dが負の場合、小数成分が存在すると、小さい方の整数に丸められます。