MATLAB Answers

1

While loop for array. I want the loop stop when all element of "a" equal "b" but for this loop it will stop when only one element of a equal b. How could I fix it?

Asked by Nopparat on 2 Dec 2012
Latest activity Commented on by Marko
on 27 Nov 2019 at 14:44
I'd like to use while loop for array.
For example, I have the first array(a) ,10x10x10, and the second array(b),10x10x10 and this following is my condition:
while a ~= b .... a statement.....
end
I want this stop when all element of "a" equal "b" but for this loop it will stop when only one element of a equal b. How could I fix this statement?
Thank you very much

  0 Comments

Sign in to comment.

1 Answer

Answer by the cyclist
on 2 Dec 2012
Edited by the cyclist
on 2 Dec 2012
 Accepted Answer

while not(isequal(a,b))

  2 Comments

And how would ich work is it should be equal within a tolerance? Here it is not even doing the while loop bcecause the conditon is true for the last two elements of the arrays.
A = [5,2,1,0,0];
B = [4,1,0,0,0];
error = 0.1;
for i = 1:5
i = i+1
while not (A-B < error))
disp('Increase B')
B = B + 0.01;
end
end

Sign in to comment.