利用Matlab计算小数除法时,计算结果出现问题

13 次查看(过去 30 天)
远东 谢
远东 谢 2023-3-13
回答: Abhijeet 2023-4-6
计算2.47/0.01时,输出247.0000,此时对结果使用ceil函数,得到的结果是278。但是计算2.471/0.001和24.7/0.1时均直接得到整数结果。

回答(1 个)

Abhijeet
Abhijeet 2023-4-6
Hi,
You have encountered a round-off error that demonstrates a fundamental problem with the way computers deal with fractional numbers. Some numbers (in fact, "most" of them) cannot be represented exactly in binary form -- specifically, fractional numbers that are not powers of two. This will occur in any computer program using ANSI/IEEE standard math.
You can refer to this answer for the same.
Thanks

类别

Help CenterFile Exchange 中查找有关 Logical 的更多信息

标签

产品


版本

R2018a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!