find something strange when using rot90. the matrix are not equal nor equal. In this case 33 appears in the answer.
7 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Henry
el 11 de Mzo. de 2014
Comentada: Henry
el 11 de Mzo. de 2014
A=randi(2,3,3);
B=rot90(A);
if A==B
11
elseif A~=B
22
else
33
end
0 comentarios
Respuesta aceptada
Walter Roberson
el 11 de Mzo. de 2014
An evaluated expression is true when the result is nonempty and contains all nonzero elements (logical or real numeric). Otherwise, the expression is false.
The A==B is not true because there is at least one element that does not match. The A=~B is not true because there is at least one element that does match. So you get the third possibility.
Más respuestas (1)
Dishant Arora
el 11 de Mzo. de 2014
A and B are matrices not scalar compare them using isequal. Try this
if isequal(A,B)
% do something
elseif ~isequal(A,B)
% do something
And to know what you did wrong in your code type this:
A==B
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!