如何在以下条件的基础上四舍五入

时间:2019-05-01 11:53:20

标签: php

我想根据以下数字四舍五入。 这些数字如下。 假设

case 1) I have number 0.1 Between 0.24, then the round output should be 0.25
case 2) number 0.26 Between 0.49, then the round output should be 0.50
case 3) number 0.51 Between 0.74, then the round output should be 0.75
case 4) number 0.76 Between 0.99, then the round output should be 1.00

case 5) I have number 1.1 Between 1.24, then the round output should be 1.25
case 6) number 1.26 Between 1.49, then the round output should be 1.50
case 7) number 1.51 Between 1.74, then the round output should be 1.75
case 8) number 1.76 Between 1.99, then the round output should be 2.00

这里是动态数字。并且该数字将始终大于零。

请帮助我以及如何实现的建议。

1 个答案:

答案 0 :(得分:0)

看起来像(美国)钱。看起来像“四舍五入到最近的四分之一”。

注意图案。在每种情况下,都应一些数字以获取最近的四分之一。您需要做的就是计算添加量。

您可能熟悉模数运算符和"technical" description

$a % $b     Modulo  Remainder of $a divided by $b.

但是请记住,“余数”还表示除数($ b)与分红的倍数($ a)之间的“距离”。

一个简单的示例:27 % 25 = 2。 27比25的倍数大2。它也比25的 next 倍小25 - 2 = 23。要舍入,等式为27 + (25 - (27 % 25))

但是,{%仅适用于整数。您需要使用fmod function对浮点数进行操作。

(警告:所有示例都不是.25的倍数。这些输入必须在例外情况下进行处理,以防止添加额外的.25)。