while-loop condition - arrays equal within a tolerance
7 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Hi guys!
I simplified the problem according to my issue. I basicly want to iterate arrays within a while function. But as soon as one element of the array is true, the while loop is not executed anymore. I want that the while looping is iterating until all elements of the arrays are euqal within a tolerance.
A = [5,2,1,0,0];
B = [4,1,0,0,0];
for i = 1:5
i = i+1
while not(A-B < 0.1*ones(5,1)) & ...
disp('Increase B')
B = B + 0.01;
end
end
0 Kommentare
Akzeptierte Antwort
Nicolas B.
am 27 Nov. 2019
for you case, I understand that you want the maximum absolute difference being below a limit?
In that case, the "stay in" condition is:
while max(abs(A-B), [], 'all') > you_limit
...
end
the option on the max function is to ensure that you return 1 maximum whatever size have A and B.
Weitere Antworten (0)
Siehe auch
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!