Help me with this question please....
1 次查看(过去 30 天)
显示 更早的评论
Write a loop to calculate the sum 1*2+2*3+3*4+ ... + 99*100. The answer is 333300
so far I have
total = 0;
for n = 1:100;
total = total + n;
end
fprintf('Total %d\n' , total)
0 个评论
回答(2 个)
John D'Errico
2017-12-11
编辑:John D'Errico
2017-12-11
Your loop sums only the integers from 1 to n, not the product of consecutive integers. But, hey, you were close, and you made a credible effort.
total = 0;
for n = 1:99
total = total + n*(n+1);
end
fprintf('Total %d\n' , total)
There was actually a second problem with what you wrote. The desired sum will have only 99 terms to sum! So my loop goes only from 1 to 99.
Roger Stafford
2017-12-11
编辑:Roger Stafford
2017-12-11
An alternative formula which reduces the amount of computation would be:
n = 99;
total = n*(n+1)*(n+2)/3;
That is true for any positive integer n.
0 个评论
另请参阅
类别
在 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!