如何解决在 C++ 中的某处是否有任何正常的数学商和`int` 的余数?
余数总是正数,例如
remainder(-1,7) == 6
不是-1
例如,商应该向负无穷大舍入,而不是向零舍入,
quotient(-1,7) == -1
不是0
。
stdlib 中是否有这样的函数?
解决方法
在 C++ 的某处是否有任何正常的数学商和 gineer). ||Reference Standards: |NFPA
的余数?
int
是 remainder 运算符,但我们可以使用它来接近目标。
%
使用
7 modulo 3 --> 1
7 modulo -3 --> 1
-7 modulo 3 --> 2
-7 modulo -3 --> 2
另请参阅涵盖各种陷阱的 Fastest way to get a positive modulo in C/C++。
,当您将 (num1 % num2 + num2) % num2
除以 num1
和 num2
以获得四舍五入的商时,您可以执行 floor(1.0 * num1 / num2)
来获得余数。 (floor
位于 cmath
库中)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。