0

私は、を持っていTimeSpanますts

私が使うMath.Round(ts.TotalHours,2)と戻っ3,3てきて、それは正しいです。

小数を次のようにフォーマットしたい3,33 -> 3,5

このような:

3 hours = 3,0
3 hours and 10 minutes = 3,25
3 hours and 20 minutes = 3,5
3 hours and 35 minutes = 3,75
3 hours and 55 minutes = 4

誰もが良い考えを持っていますか?

4

1 に答える 1

6

最も近い 0.25 を丸めたい場合は、単純に 4 を掛けて四捨五入し、4 で割ることができます。

public static decimal RoundToQuarter(decimal x)
{
  return Math.Round(x*4)/4;
}

また、どのような動作が必要かについても検討する必要がありますMidPointRounding。つまり、 または のような値で何が起こる1/83/8。デフォルトは偶数へ1/80丸め3/8です0.5

于 2012-05-22T08:47:35.540 に答える