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

18 visualizzazioni (ultimi 30 giorni)
远东 谢
远东 谢 il 13 Mar 2023
Risposto: Abhijeet il 6 Apr 2023
计算2.47/0.01时,输出247.0000,此时对结果使用ceil函数,得到的结果是278。但是计算2.471/0.001和24.7/0.1时均直接得到整数结果。

Risposte (1)

Abhijeet
Abhijeet il 6 Apr 2023
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

Categorie

Scopri di più su MATLAB in Help Center e File Exchange

Prodotti


Release

R2018a

Community Treasure Hunt

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

Start Hunting!