How to use invert values of a logical array
    76 views (last 30 days)
  
       Show older comments
    
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!
0 Comments
Accepted Answer
  Sean de Wolski
      
      
 on 11 Mar 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)
More Answers (1)
  Sagar Damle
      
 on 11 Mar 2014
        xor(A,toggle)
OR
bitxor(A,toggle)
It is assumed that 'A' and 'toggle' contain only 0's and 1's.
0 Comments
See Also
Categories
				Find more on Logical 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!

