use*_*393 2 floating-point int perl integer-arithmetic
在我受到抨击之前,我想说我确实理解浮点数和类似的东西,但这似乎不是我的问题.
为简化起见,我试图确定一个数字是否超过2位小数.我这样做是通过将数字乘以100(存储在变量" test1"下)然后截断它int() ($test2)并将其与a进行比较if.
$test1 = $number * 100;
$test2 = int($test1);
unless ($test1 == $test2) {
die ("test1:$test1, test2:$test2");
}
Run Code Online (Sandbox Code Playgroud)
最初$number来自一系列其他函数,实际上应该只有两位小数,因此我试图捕捉那些不是(因为一些条目似乎有很多小数).
但是,我得到了:
test1:15, test2:14
Run Code Online (Sandbox Code Playgroud)
从我的die().
有人能解释一下会发生什么吗?怎么能int(15)是14?
| 归档时间: |
|
| 查看次数: |
92 次 |
| 最近记录: |