Comparative Operator result is wrong
Show older comments

I tried to run the if statement but this happens.
The result must be true(=1) in the last instruction but it returns false(=0)...
Anyone knows what is the problem???
1 Comment
Stephen23
on 12 Apr 2021
"Anyone knows what is the problem???"
The assumption that binary floating point numbers have infinite precision:
This is worth reading as well:
Answers (3)
KSSV
on 12 Apr 2021
Note that you are comparing two floating point numbers and such numbers cannot be comapred using ==. Follow
tol = 10^-5 ;
idx = abs(val1-val2)<tol
Steven Lord
on 12 Apr 2021
0 votes
Two numbers that are displayed the same may not represent the same stored value. See this Answers post for more information about floating point numbers.
Image Analyst
on 12 Apr 2021
0 votes
Categories
Find more on Resizing and Reshaping Matrices in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!