首页 > 解决方案 > 向下舍入到四分之一 (0.25)

问题描述

如果我有double, 并且想将其向下舍入到最接近的四分之一值 (0.25),这可能吗?

这些中的每一个都给我 0.5,实际上应该给我 0.25:

Math.Round(0.499999, 2, MidpointRounding.AwayFromZero);
Math.Round(0.499999, 2, MidpointRounding.ToEven);

有没有总是四舍五入“向下”的概念?

这个问题与“最近”舍入有关。我不需要那个

“重复”完全基于 NEAREST 舍入。这与我完全无关。我不是在问最近。我问的是总是向下舍入。请注意,0.499999 非常接近 0.5 - 这不是我想要的。我希望 0.49999 变成 0.25 (DOWN)

标签: c#

解决方案


double x = 0.4999;
double answer = Math.Truncate(4*x)/4; // result: 0.25

推荐阅读