Info

This question is closed. Reopen it to edit or answer.

How can I put the values that I made in a for and if loop into a vector?

1 view (last 30 days)
This is what I've got so far, there might be other issues too.
for i = 0:L;
if i == 0:L_1
v_1(i) = P-(P*L_1)/L
m_1(i) = (P-((P*L_1)/L))*i
elseif i == L_1:L
v_1(i) = ((P*L_1)/L)-P
m_1(i) = (P-((P*L_1)/L))*i - P*(i-L_1)
end
v = (i,v_1(i))
m = (i,m_1(i))
end
  9 Comments

Answers (1)

Sergey Kasyanov
Sergey Kasyanov on 6 Apr 2018
Edited: Sergey Kasyanov on 6 Apr 2018
Code improvements:
%Range of i for different calculation formulas
FirstRange=[1:L_1];
SecondRange=[L_1:L];
%Create array with result of calculations
v=[ones(length(FirstRange),1)*(P-(P*L_1)/L)
ones(length(SecondRange),1)*(((P*L_1)/L)-P)];
m=[FirstRange'*(P-((P*L_1)/L))
(P-((P*L_1)/L))*SecondRange' - P*(SecondRange'-L_1)];
Notes:
1) FirstRange - row array, FirstRange' - column array with same data.
2) ones(length(FirstRange),1) - column array with ones with the same length as FirstRange.
3) In (P-((P*L_1)/L))*i - P*(i-L_1) the i is replaced by array with i values - SecondRange. That also works.
Yoy may plot graph with that:
plot(m,v)
If you want to plot a rectangle you may use function rectangle.

This question is closed.

Community Treasure Hunt

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

Start Hunting!