首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用fmod()查找2个浮点数之间的提醒

使用fmod()查找2个浮点数之间的提醒
EN

Stack Overflow用户
提问于 2020-05-27 14:52:33
回答 1查看 122关注 0票数 0

我试图验证第一个浮点数是否可以被第二个浮点数完全除以,我得到了如下内容:

代码语言:javascript
复制
$first = 10.20; // or 5.10, 7.14, 9.18
$second = 1.02;

var_dump(fmod($first, $second));

// output is showing
float(1.02)

但是,如果我试图将这些数字除以1.02,fmod()的效果很好,我不明白为什么fmod()会这样做?对这个问题的任何回答都将有助于我理解这一事实。

代码语言:javascript
复制
$first = 4.08; // or 2.04, 3.06, 6.12, 8.16
$second = 1.02;

var_dump(fmod($first, $second));

// output is showing
float(0)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-05-27 15:05:16

这是因为fmod()函数只返回所作除法的浮点模。

在第一个例子中,余数是一个浮点值,它由函数返回。

但是在下面的例子中,如果我们将除法作为

代码语言:javascript
复制
$first = 4.08; // or 2.04, 3.06, 6.12, 8.16
$second = 1.02;

我们得到整数类型的余数,即0.041616.The问题,这里是函数所显示的值仅限于第一个十进制(在本例中是0.0).But,如果我们必须将两个数字的模查找为

代码语言:javascript
复制
<?php
$x = 5.7;
$y = 1.3;
$r = fmod($x, $y);
?>

我们将得到浮点(0.5)的值。

因为这里小数点之后的第一个数字不是0。

因此,在您的例子中,函数显示了float(0)

有关更多详细信息,请访问单击此处

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62046099

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档