using nested for loops
조회 수: 26 (최근 30일)
이전 댓글 표시
Hi, how to use nested for loops to multiply 2 matrices and make it work just like MATLAB operator? The function must work on matrices of any compatible size. I know what is nested for loops but in this case ,I dunno hw to apply it. Any help is much appreciated.Thanks.
댓글 수: 0
답변 (1개)
Andrei Bobrov
2011년 4월 18일
most unwise variant
function C = yourmtimes(A,B)
[m,namb] = size(A);
n = size(B,2);
C = zeros(m,n);
for ii = 1:m
for jj = 1:n
c1 = 0;
for k = 1:namb
c1 = c1 + A(ii,k)*B(k,jj);
end
C(ii,jj) = c1;
end
end
more
m = size(A,1);
n = size(B,2);
C = zeros(m,n);
for ii = 1:m
for jj = 1:n
C(ii,jj) = sum(A(ii,:).*B(:,jj).');
end
end
or
m = size(A,1);
n = size(B,2);
C = zeros(m,n);
for ii = 1:m
for jj = 1:n
C(ii,jj) = A(ii,:)*B(:,jj);
end
end
or
m = size(A,1);
n = size(B,2);
C = zeros(m,n);
nones = ones(n,1);
for ii = 1:m
C(ii,:) = sum(A(ii*nones,:).'.*B);
end
etc.
댓글 수: 1
Leon Barainsky
2019년 12월 17일
None of them work for me, could there be something wrong with my matlab settings?
참고 항목
카테고리
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!