필터 지우기
필터 지우기

Help me with this question please....

조회 수: 1 (최근 30일)
Mohammed Safwat
Mohammed Safwat 2017년 12월 11일
편집: Roger Stafford 2017년 12월 11일
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)

답변 (2개)

John D'Errico
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
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.

카테고리

Help CenterFile Exchange에서 Loops and Conditional Statements에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by