How do I code this for loop?

vd_inc is a matrix where I obtain values from, I then want to store p1-p5 in a matrix.
p1= 0;
p2 = p1+ vd_inc(31);
p3= p2 + vd_inc(30);
p4 = p3+ vd_inc(29);
p5= p4 + vd_inc(28);
This is my attempt, the problem is that p(index) is going up in increments and vd_inc is decreasing, 2 for loops are required?
for index1 = 1:31
index1=1
p(index+1)= p(index)+ vd_inc(index);
end

 Accepted Answer

I don't know how you're getting anything out of it, since the index isn't even being used.
You could do this:
vd_inc = 1:100;
p = zeros(1,5);
for index = 1:numel(p)-1
p(index+1)= p(index)+ vd_inc(31-index+1);
end
p
p = 1×5
0 31 61 90 118
but you really don't even need the loop
p = [0 cumsum(vd_inc(31:-1:28))]
p = 1×5
0 31 61 90 118

1 Comment

Forgot to add the 1 to make it index1, thanks for your help

Sign in to comment.

More Answers (0)

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Products

Tags

Asked:

on 11 Jun 2021

Commented:

on 11 Jun 2021

Community Treasure Hunt

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

Start Hunting!