How can I solve if condition in for loop matrix?
조회 수: 5 (최근 30일)
이전 댓글 표시
I want to make an iteration that when the component of a matrix A has less value than the component of matrix B, it will continue the process to the next iteration.
A =
[ 2 5 9 12
6 4 13 1
3 2 19 5]
B=
[ 5
5
5]
in the first column, the condition is not met so it cannot proceed to the second column. and in the second column, conditions have been met so that it can proceed to the third column.
I tried in for loop but, the A values always stuck in first column even condition is right.
Thank you.
댓글 수: 3
Guillaume
2019년 5월 30일
then the loop
What loop? Remember that we have no idea what you're doing. If you don't show us your code, how can we tell us how to fix it?
Most likely, whatever loop you're using is not even necessary.
채택된 답변
Murugan C
2019년 5월 30일
편집: Guillaume
2019년 5월 30일
Hi
use below code for your query.
Here, B will check all rows, each column in A is less than, then it will allow to next iteration.
A = [ 2 5 9 12; 6 4 13 1; 3 2 19 5]
B = [5; 5 ;5];
[row,col] = size(A);
for ii = 1 : col
% fprintf('Current Column is : %d\n', ii);
C1 = A(:,ii) < B;
if all(C1,1)
fprintf('Current Column is : %d, Next Column is : %d\n', ii, ii+1);
continue;
else
fprintf('Stopped at %d Column because unsatisfied B input \n', ii);
break;
end
end
댓글 수: 3
Murugan C
2019년 5월 30일
Thanks Guillaume.
I knew, continue will not take any action in 'for' loop. Any how I will try avoid it..
추가 답변 (1개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Loops and Conditional Statements에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!