generate a summation series

3(2+1)+4(3+2+1)+5(4+3+2+1)+6(5+...1)+...+1000(999+...+1).
How to write a matlab code to calculate the following summation without using for loop?
i can see the trend for 3(2+1) if the n = 1 (n+2)[((n+2)-1)+((n+2)-2)].
Assume the summation only sum until 6th term.
can we use array to solve this?

 Respuesta aceptada

Stephen23
Stephen23 el 13 de Ag. de 2015
Editada: Stephen23 el 13 de Ag. de 2015

0 votos

>> X = 1+cumsum(2:999); % 1+[2,3+2,4+3+2,...,999+..+2]
>> Y = 3:1000; % [3,4,5,...,1000]
>> sum(X.*Y)
ans = 125083208248
Note that this uses element-wise multiplication.

2 comentarios

Odien
Odien el 13 de Ag. de 2015
Thank you !
Walter Roberson
Walter Roberson el 13 de Ag. de 2015
This looks like it was homework to me...

Iniciar sesión para comentar.

Más respuestas (1)

Walter Roberson
Walter Roberson el 13 de Ag. de 2015

0 votos

It does have a symbolic answer that you could find using nested symsum() if you have the symbolic toolbox.
But for a numeric answer: cumsum() and multiply by something gives a bunch of terms...

Categorías

Más información sobre Mathematics en Centro de ayuda y File Exchange.

Productos

Preguntada:

el 13 de Ag. de 2015

Editada:

el 12 de Jun. de 2021

Community Treasure Hunt

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

Start Hunting!

Translated by