How to stop from rounding off the decimal numbers?
Show older comments
Hi,
if yupperleft(j)== piinterval(i) upperleft(i)= x1(j);
In the above code, yupperleft is the array which i have calculated by some formulation. piinterval is the array generated from : piinterval=(0:0.1:1);
Matlab is storing the value at 31 index of yupperleft as 0.1000. piinterval(2) will also be 0.1000.
But when comparing they are not getting equal. The reason is because yupperleft is actually 0.0999999999999999.
Is there any way so that i can round off or do something so that 0.0999999999999999 gets to 0.1000 actually not just for to show.
Thanks
Accepted Answer
More Answers (2)
The simplest method is to allow for some tolerance in the comparison:
A = 0.1;
B = 0.09999999;
Instead of
A==B
you should use
abs(A-B) < 1e-6 % pick this value to suit your needs
Virtualkeeda
on 4 Jan 2015
0 votes
Categories
Find more on Logical in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!