while-loop condition - arrays equal within a tolerance
12 ビュー (過去 30 日間)
表示 古いコメント
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 件のコメント
採用された回答
Nicolas B.
2019 年 11 月 27 日
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.
その他の回答 (0 件)
参考
カテゴリ
Find more on Data Types in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!