How to use invert values of a logical array

295 Ansichten (letzte 30 Tage)
Dani Tormo
Dani Tormo am 11 Mär. 2014
Beantwortet: Sagar Damle am 11 Mär. 2014
Hello people,
the problem seems quite simple but I cannot figure out how to implement it.
I have two logical arrays. In one I have several values, and in the other the information about which of them I want to toggle. It is to apply a NOT gate, but I do not know how to implement it.
A = [1 1 1 1 1
0 1 0 1 0
1 1 1 1 1]
toggle = [0 0 0 0 0
1 1 1 1 1
0 0 0 0 0]
result = [1 1 1 1 1
1 0 1 0 1
1 1 1 1 1]
So in the end I want to toggle the middle row of A avoiding the use of if statements. How to do it?
Thanks!

Akzeptierte Antwort

Sean de Wolski
Sean de Wolski am 11 Mär. 2014
A = [1 1 1 1 1
0 1 0 1 0
1 1 1 1 1]
toggle = logical([0 0 0 0 0
1 1 1 1 1
0 0 0 0 0])
% Apply not(), which is equivalent to ~
A(toggle) = ~A(toggle)

Weitere Antworten (1)

Sagar Damle
Sagar Damle am 11 Mär. 2014
xor(A,toggle)
OR
bitxor(A,toggle)
It is assumed that 'A' and 'toggle' contain only 0's and 1's.

Kategorien

Mehr zu MATLAB finden Sie in Help Center und File Exchange

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by