Hi,. I need support in doing a double summation in MATLAB. Thank you.

1 visualizzazione (ultimi 30 giorni)
Hi,
I need to do the following double summation ∑(i=0,2)∑(j=0,3)〖(2i+3j)〗in a MATLAB program. The answer should be 78. Thank you.
HD

Risposta accettata

hani daniel
hani daniel il 28 Apr 2017
Hi Star Strider,
Thank you for your answer.
Regards
HD
  1 Commento
Adam
Adam il 28 Apr 2017
Please just accept the answer you are happy with. Don't add your own answer to just say which answer works and then accept that! You can add comments to people's answers.

Accedi per commentare.

Più risposte (3)

Stephen23
Stephen23 il 28 Apr 2017
>> M = bsxfun(@plus,2*(0:2),3*(0:3).');
>> sum(M(:))
ans = 78

hani daniel
hani daniel il 28 Apr 2017
Hi Stephen,
Thank you for your answer, it is correct. However, as a beginner at MATLAM, I do not understand the bsxfun command. I was expecting to use a for loop type of solution. Please let me know of alternatives. Thank you.
Regards
HD

Star Strider
Star Strider il 28 Apr 2017
There are likely several ways to code this (I assume this is a coding exercise, since the correct answer is provided).
This is one approach:
i = 0:2;
j = 0:3;
[I,J] = meshgrid(i, j);
f = @(i,j) 2*i + 3*j; % Anonymous Function
fmtx = f(I,J);
Answer = sum(fmtx(:))
I am not documenting it, leaving it for you to understand how it works.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by