Azzera filtri
Azzera filtri

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 visualizzazioni (ultimi 30 giorni)
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

Risposta accettata

the cyclist
the cyclist il 2 Dic 2012
Modificato: the cyclist il 2 Dic 2012
while not(isequal(a,b))
  2 Commenti
Marko
Marko il 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

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Loops and Conditional Statements in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by