当前位置: 首页 > 面试题库 >

PHP float计算的准确性

闻华容
2023-03-14
问题内容

$fooValue = 100.68;
$cowValue = 100.67;

$diffValue = $fooValue - $cowValue;
if($diffValue <= 0.01) {
    echo("success");
} else {
    echo("error");
}

这将显示“错误”。

我知道用Java做些什么。但是我不太擅长PHP,尤其是在计算方面。

请帮帮我。我是说如何成功?


问题答案:

浮点数是一种不精确的数据类型(就像所有浮点数据类型一样),因为在二进制之间进行转换可能会失去精度。这就是为什么当您需要高精度(精确)时不应该使用浮点运算的原因。

在PHP中,检查BCMath或GMP库。后者仅适用于整数,但是它具有高性能,有时可以在不损失精度的情况下与整数进行转换。



 类似资料:
  • 反双曲函数< code>asinh()与自然对数密切相关。我试图确定从C99标准数学函数< code>log1p()计算< code>asinh()的最准确方法。为了便于实验,我现在将自己限制在IEEE-754单精度计算,也就是说,我正在研究< code>asinhf()和< code>log1pf()。我打算稍后重新使用完全相同的算法进行双精度计算,即< code>asinh()和< code>

  • 我希望获得PDF中每个页面的准确大小,作为我将创建的PDF单元测试的一部分。当我处理每个文档中具有许多不同页面大小的PDF时,代码返回一个ArrayList维度。 AFAIK每个页面也可以有自己的DPI设置。 我在谷歌上搜索了很多次,但我只找到了这个答案,这只给了我部分答案,因为我仍然需要计算出每页的DPI。 PDFBox-查找页面维度

  • 当我计算日差时,我必须减去月差中包含的天数。那么我该如何计算一个月有28天、31天还是30天,以及有多少天。我必须乘以月差?我将如何生成计算特定月份内的确切天数的公式,例如2个月或4个月内的天数?

  • 问题内容: 我正在Windows上的python中进行编程,想准确地测量函数运行所花费的时间。我已经编写了一个函数“ time_it”,该函数需要另一个函数,然后运行它并返回运行时间。 我称其为1000次并取平均值。(最后的1000常数以毫秒为单位给出答案。) 该函数似乎可以正常工作,但是我有一种na不安的感觉,那就是我做错了什么,通过这种方式,我花的时间比函数运行时实际花费的时间更多。 有没有更

  • 标准正态分布的概率密度函数定义为e < sup >-x < sup > 2 /2 /√(2π)。这可以用简单的方式转换成C代码。单精度实现的示例可能是: 虽然此代码没有过早的下限溢位,但存在精度问题,因为计算2/2时产生的误差会被后续的幂运算放大。人们可以通过针对更高精度引用的测试轻松证明这一点。确切的误差将根据所使用的或实现的准确性而有所不同;对于忠实四舍五入的幂函数,人们通常会观察到IEEE-

  • null 我相信这个答案是正确的,但我无法证明。有人能证明它为什么起作用或提供一个反例吗?