我正尝试如下所示。
1.1 -> 1
1.2 -> 1
.
1.4 -> 1
1.5 -> 1.5
1.6 -> 1.5
.
.
1.9 -> 1.5
2 -> 2
我该如何实现?我试过Math.Round(value),Math.Round(value,1),Math.Round(value,MidpointRounding.AwayFromZero)似乎什么都没有实现。非常感谢您的帮助
这应该使用Math.Floor
方法返回预期的结果,因为它
返回小于或等于指定值的最大整数值数字。
Math.Floor
[double value = 1d;
do
{
var result = Math.Floor(value * 2) / 2;
Console.WriteLine($"{value:f1}->{result}");
value += 0.1;
}
while (value < 2.1);
返回Math.Round
作为1.5
或1.3
的结果