Equation is correct but logically false???
4 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Florent Dueme
el 9 de Dic. de 2017
Comentada: Star Strider
el 10 de Dic. de 2017
Hi all,
I can´t make any sense of this. I have this very simple equation that is equal to 0.1 according to Matlab itself. Yet when I try to create an if statement where something happens if the value is equal to 0.1 Matlab tells me the statement is logically false:
>> a = 11
a =
11
>> (a/10)-(floor(a/10))
ans =
0.1000
>> (a/10)-(floor(a/10))==0.1
ans =
logical
0
Even weirder, it works fine when the equation equals another number like 0.6 or 0.7 (but not 0.2 or 0.3).
Any help understanding this would be very welcome!
2 comentarios
Respuesta aceptada
Star Strider
el 9 de Dic. de 2017
This is one of the better discussions on the problem you are experiencing: Why is 0.3 - 0.2 - 0.1 (or similar) not equal to zero? (link).
2 comentarios
Más respuestas (0)
Ver también
Categorías
Más información sobre Logical en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!