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

计算2.47/0.01时,输出247.0000,此时对结果使用ceil函数,得到的结果是278。但是计算2.471/0.001和24.7/0.1时均直接得到整数结果。

Respuestas (1)

Abhijeet
Abhijeet el 6 de Abr. de 2023

0 votos

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

Categorías

Más información sobre MATLAB en Centro de ayuda y File Exchange.

Productos

Versión

R2018a

Etiquetas

Preguntada:

el 13 de Mzo. de 2023

Respondida:

el 6 de Abr. de 2023

Community Treasure Hunt

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

Start Hunting!