Xor(A, B), does A, B have to be the same dimension?

3 visualizaciones (últimos 30 días)
Feiyang Bai
Feiyang Bai el 12 de Jun. de 2022
Comentada: Feiyang Bai el 13 de Jun. de 2022
C = xor(A,B) performs a logical exclusive-OR of arrays A and B and returns an array containing elements set to either logical 1 (true) or logical 0 (false). So, A and B has to be the same dimension so it could compare, right? But in the example, A is a 1*2; while B is a 2*1 dimension matrix.
Can anyone help me explain it?
Thanks,
  2 comentarios
Stephen23
Stephen23 el 12 de Jun. de 2022
Editada: Stephen23 el 12 de Jun. de 2022
"So, A and B has to be the same dimension so it could compare, right?"
No.
"Can anyone help me explain it?"
The XOR documentation states that they have to be compatible sizes:
Feiyang Bai
Feiyang Bai el 13 de Jun. de 2022
Hi,
Thanks for the explaning and extra resource. I appreciate it.
Feiyang

Iniciar sesión para comentar.

Respuesta aceptada

DGM
DGM el 12 de Jun. de 2022
Editada: DGM el 12 de Jun. de 2022
The arguments don't necessarily need to have the same size/shape, but they need to have compatible size/shape. Like many things in modern versions, implicit array expansion applies here. I imagine the example in the docs is something like:
xor([0 1],[0;1]) % xor two vectors
ans = 2×2 logical array
0 1 1 0
which is equivalent to
xor([0 1; 0 1],[0 0; 1 1]) % the two vectors expanded to a common array size
ans = 2×2 logical array
0 1 1 0
Consider the similarity:
plus([1 2 3 4],[1;2]) % add two vectors
ans = 2×4
2 3 4 5 3 4 5 6
  1 comentario
Feiyang Bai
Feiyang Bai el 13 de Jun. de 2022
Hi,
Thanks for the answer. It helped a lot.
Appreciate.
Feiyang

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Logical en Help Center y File Exchange.

Etiquetas

Productos


Versión

R2022a

Community Treasure Hunt

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

Start Hunting!

Translated by