Borrar filtros
Borrar filtros

Help me with this question please....

1 visualización (últimos 30 días)
Mohammed Safwat
Mohammed Safwat el 11 de Dic. de 2017
Editada: Roger Stafford el 11 de Dic. de 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)

Respuestas (2)

John D'Errico
John D'Errico el 11 de Dic. de 2017
Editada: John D'Errico el 11 de Dic. de 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 el 11 de Dic. de 2017
Editada: Roger Stafford el 11 de Dic. de 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.

Categorías

Más información sobre Loops and Conditional Statements en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by