私の値2.8634
を2.8
に変換する必要があります。私は以下を試しました小数点以下の桁数を丸めずに1にする方法
var no = Math.Round(2.8634,2,MidpointRounding.AwayFromZero)
私は2.87
を得ています。
変換する方法を教えてください。
おかげ
私の値2.8634
を2.8
に変換する必要があります。私は以下を試しました小数点以下の桁数を丸めずに1にする方法
var no = Math.Round(2.8634,2,MidpointRounding.AwayFromZero)
私は2.87
を得ています。
変換する方法を教えてください。
おかげ
これは
decimal dsd = 2.8634m;
var no = Math.Truncate(dsd * 10)/10;
Math.Truncateは、指定された小数の不可欠な部分を計算し、あなたのためにトリックを行う可能性があります。数値はゼロに向かって最も近い整数に丸められます。
また、驚くべき説明でMath.Floor
, Math.Ceiling
, Math.Truncate
, Math.Round
の違いを見ることができます。
使用これはあなたのために動作します。このone.Hope。
var no = Math.Round(2.8634,1,MidpointRounding.AwayFromZero)
それは2.9です、彼は2.8 –
を取得したいです – shalusri
それはMath
メソッドを呼び出すより不可解な(しかし、より効率的な)少しですが、あなたは、単に、10で(有効小数部を切り捨て)整数にキャスト値を乗算し、次にによって分割することができ10.0(または10d
/10f
、すべてが整数除算を得ないようにしてください)、後の値を返すことができます。すなわちは:
float val = 2.8634;
val = ((int)(val * 10))/10.0;
ありがとう!その仕事 – shalusri
ハッピーコーディング@ shalusriあなたを助けるために幸せ:) –