1

How can i print the numbers of a float/double variable after the decimal point? For example for 435.5644 it will output 5644.

4

3 に答える 3

4

で試してください

fraction = value - (long) value;

また :

fraction = value - Math.Floor(value);
于 2012-07-31T15:50:39.150 に答える
1

次のことを試すことができます。

  double d = 435.5644;
  int n = (int)d;

  var v = d - n;

  string s = string.Format("{0:#.0000}", v);

  var result = s.Substring(1);

結果: 5644

于 2012-07-31T15:54:19.983 に答える
-1

編集:別の質問への参照(http://stackoverflow.com/questions/4512306/get-decimal-part-of-a-number-in-javascript)次の操作を実行できます。

double d = 435.5644;
float f = 435.5644f;
Console.WriteLine(Math.Round(d % 1, 4) * 10000);
Console.WriteLine(Math.Round(f % 1, 4) * 10000);

それはあなたが探している整数部分をあなたに与えるでしょう。

Aghilas Yakoubが答えたようにそれを行うのが最善ですが、ここでは文字列処理を使用する別のオプションを示します。すべての金額に小数があり、小数点がドット(。)であると仮定すると、インデックス1を取得する必要があります。

double d = 435.5644;
Console.WriteLine(d.ToString().Split('.')[1]);

float f = 435.5644f;
Console.WriteLine(f.ToString().Split('.')[1]);

そうしないと、未処理の例外System.IndexOutOfRangeExceptionが発生する可能性があります。

于 2012-07-31T16:04:01.913 に答える