Summation after looping
4 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I got a problem with summation after looping. Here is the problem :
------------------------------------------
for ri = 0:3
if ri == 0
mi = 1
elseif i > 0
mi = 1
end
end
r = sum(ri)
------------------------------------------
I'm expecting the result from r was 6 (0+1+2+3) but its result was 3. I think the sum command only read the last ri which is 3 and neglecting the other ri.
Any answer will be appreciated. Thanks!
0 commentaires
Réponse acceptée
Matt Kindig
le 16 Mai 2012
When you use the 'for' statement, you iteratively set ri to each of the values 0, 1, 2, 3. Thus ri only contains 3 after the loop. Instead, assign ri=0:3 to a different variable and have the for loop iterate over that.
For example,
rr = 0:3;
for ri=rr,
if ri == 0
mi = 1
elseif i > 0
mi = 1
end
end
r = sum(rr); %this will be 6
Plus de réponses (1)
Voir également
Catégories
En savoir plus sur Loops and Conditional Statements dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!