Problem with double use of a for loop?
이전 댓글 표시
I have a problem aith a code. I have 2 matrices , A and B. Matrix A has 3x3 dimensions, while matrix B has 1x3 dimensions. I would like to minus (remove with "-"), the (1,1) number of B from each one number (each line) of the 1st column of A matrix.
After that, I I would like to minus (remove with "-"), the (1,2) number of B from each one number (each line) of the 2nd column of A matrix.
Last, I would like to minus (remove with "-"), the (1,3) number of B from each one number (each line) of the 3rd column of A matrix.
I tried these commands:
ndata=size(A,1)
[rows columns] = size(B);
for jj=1:size(A,1);
for zz=(columns);
MINUS(jj)=(A(:,jj))- B(1,zz);
end
end
but no use. Could you please help me?
댓글 수: 5
Stephen23
2022년 11월 13일
M = A-B % why do you need to use nested loops?
Ivan Mich
2022년 11월 13일
"Because I want to have a result of 3x3 matrix and I think that loop is neccessary for my purpose"
It works for me without loops, using arrays of the sizes that you gave in your question:
A = randi(9,3,3)
B = randi(9,1,3)
C = A-B
It is unclear what you expect to gain using nested FOR loops.
Steven Lord
2022년 11월 14일
One potential reason to use a for loop would be if the poster is using an older release of MATLAB, one that predates the introduction of implicit expansion. Another is if this is a homework assignment and the professor or teacher that assigned the work forbade the students from using implicit expansion.
Stephen23
2022년 11월 14일
"One potential reason to use a for loop would be if the poster is using an older release of MATLAB, one that predates the introduction of implicit expansion"
답변 (1개)
Stephen23
2022년 11월 13일
A-B
카테고리
도움말 센터 및 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!