1

どのように丸めますか

  1. 1 <値<1.5〜1.5

  2. 1.5<値<2から2

4

5 に答える 5

8

どうですか

double rounded = Math.ceil(number * 2) / 2;

Math.ceil()すでにdoubleを返しているので、2.0dここで割る必要はありません。これは、精度を失うことなくdoubleとして表現できる整数の範囲内にある限り正常に機能しますが、その範囲外になる場合は注意してください。

于 2013-03-26T03:49:35.717 に答える
2
public double foo(double x){
  int res = Math.round(x);
  if(res>x) // x > .5
   return res -0.5;
  else 
   return res + 0.5;
}

私はこれをコンパイルしていませんが、これは擬似コードであり、動作するはずです

于 2013-03-26T03:44:06.607 に答える
1

2を掛けて、を使用しMath.ceil()、その結果を2で割ります。

于 2013-03-26T03:52:47.393 に答える
1
    public double round(double num)
    {
        double rounded = (int) (num + 0.4999f);
        if(num > rounded)
            return rounded + 0.5;
        else
            return rounded;
    }
于 2013-03-26T04:01:10.683 に答える
-2

使用できます

double numberGrade = 2.5;
Math.ceil(numberGrade);
于 2013-03-26T03:43:50.280 に答える