Azzera filtri
Azzera filtri

Help me with this question please....

1 visualizzazione (ultimi 30 giorni)
Mohammed Safwat
Mohammed Safwat il 11 Dic 2017
Modificato: Roger Stafford il 11 Dic 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)

Risposte (2)

John D'Errico
John D'Errico il 11 Dic 2017
Modificato: John D'Errico il 11 Dic 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 il 11 Dic 2017
Modificato: Roger Stafford il 11 Dic 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.

Categorie

Scopri di più su Loops and Conditional Statements in Help Center e File Exchange

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by