Filter löschen
Filter löschen

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?

2 Ansichten (letzte 30 Tage)
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

Akzeptierte Antwort

the cyclist
the cyclist am 2 Dez. 2012
Bearbeitet: the cyclist am 2 Dez. 2012
while not(isequal(a,b))
  2 Kommentare
Marko
Marko am 27 Nov. 2019
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

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Loops and Conditional Statements finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by