trouble with complicated loop

1 view (last 30 days)
Rock Rocky on 10 Jun 2014
Commented: Rock Rocky on 10 Jun 2014
Hello guys would u please help me in this question Let’s say the length of x=1000, I want to make a loop to calculate the value of A For I=1:x A=(1/I)*(x+1) %when the value of x=1 % when the value of x=2 the formula should be A=(1/I)*(x+2) + ((1/I-1)*(x+1)) % when the value of x=2 the formula should be A=((1/I)*(x+3)) + ((1/I-1)*(x+2) +(1/I-3)* (x+1))
. . . . and so on my question is how can I make this loop in a right way in order to calculate the value of A starting from x=1 till x=1000 thanks in advance
Rock Rocky on 10 Jun 2014
Ok let me put it in this way, I want to make a loop in order to add the current state with the previous state for example. M=1000; for i=1:M A=i*(x(i)); % this formula will be for M=1 but when M=2 the formula will be like this A=(i*(x(i))+((i-1)*(x(i-1)))and when M=3 the formula will be A=(i*(x(i))+((i-1)*(x(i-1)))+((i-2)*(x(i-2)) and so on till reach the maximum length of M which is 1000.

David Sanchez on 10 Jun 2014
% You are playing with two differet indeces: _i_ and _M_.
% You have to fix _i_ and then perform the summation:
x=rand(10,1); % sample data
M=4; % choose your own M
i = M + 1; % i has to be greater than M. Otherwise an error will occur.
A = 0; % initialize the summation
for k=1:M
A= A + (i-(k-1))*x(i-(k-1));
end
Rock Rocky on 10 Jun 2014
Much thanks Mr David Sanchez I really appreciate your answer my best wishes to you.