Help me with this question please....

2 Ansichten (letzte 30 Tage)
Mohammed Safwat
Mohammed Safwat am 11 Dez. 2017
Bearbeitet: Roger Stafford am 11 Dez. 2017
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)

Antworten (2)

John D'Errico
John D'Errico am 11 Dez. 2017
Bearbeitet: John D'Errico am 11 Dez. 2017
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 am 11 Dez. 2017
Bearbeitet: Roger Stafford am 11 Dez. 2017
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.

Kategorien

Mehr zu Loops and Conditional Statements finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by