Compute sum of series

怎甘沉沦 提交于 2020-01-15 05:56:07

问题


I need to compute the sum of this series

I need the output this way:

If n = 3;

x = function_name(n)

I need to get x = 11.

If n = 5;

x = function_name(n)

I need to get x = 45.

I believe I need a for-loop to iterate; but am finding it difficult to iterate the increment value itself.


回答1:


inc=2;
sum=1;
next=1;

n=input('what is n?\n');

for i=2:n
    next=next+inc;
    sum=sum+next;
    inc=inc+2;
end

disp('sum is ');
disp(sum);



回答2:


I guess you want the sum of the cumsum of the differences d of the numbers:

d = 2;
n = 5;

s  =  d:d:d*(n-1)
cs  = cumsum( [1 s] )
scs = sum(cs)

%// or as anonymous function

scsh = @(n,d) sum( cumsum( [1 d:d:d*(n-1)] ) )

scs =

    45

scsh(5,2) =

    45

No need for a loop!




回答3:


function Total = abc(n)

nth_term=1;
Total = 1 ;   


    for  d = 2:2:(2*(n-1))
         nth_term = nth_term + d;       
         Total =Total + nth_term;    

    end

end


来源:https://stackoverflow.com/questions/40958009/compute-sum-of-series

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!