MATLAB: How to perform this multiplication form or by using loop

for loopmatlab functionmatrixmatrix arraymatrix manipulationmultiple

function y=a
Q=[1 2;3 4;5 6];
X=[1 0 1;0 1 0];
disp(Q);
s=[2000 3000;1000 4000;2000 3000];
disp(s);
a=[(s(1,1))*(Q(1,1)) (s(1,2))*(Q(1,2));
(s(2,1))*(Q(2,1)) (s(2,2))*(Q(2,2));
(s(3,1))*(Q(3,1)) (s(3,2))*(Q(3,2))];
disp(a);
y=sum(a(:));
end

Best Answer

No loop needed. you can calculate ‘a’ with element-wise operations:
a = Q.*s;