how, using a for loop, can I create an array

6 views (last 30 days)
I am trying to create an array for V and A that can then be plotted.
for a = [.25:.25:4] %innder radius
b = a+2 ;%outer radius
V = (.25*pi^2).*(a+b)*(b-a).^2 %equation for Volume
A = pi^2*(b^2-a.^2) %equation for Area
end
plot(V,A) %plot Volume vs. Area
with the current code, when I run the script, V and A only have one value which is equal to using a = 4
but I want every value to be saved, not just the last value for V and A

Accepted Answer

per isakson
per isakson on 7 Dec 2020
Edited: per isakson on 7 Dec 2020
how using a for loop
V and A are overwritten for every iteration of the loop. Try this
vec = [.25:.25:4];
len = length( vec );
A = nan( len, 1 );
V = nan( len, 1 );
for jj = 1 : len
a = vec(jj);
V(jj) = (.25*pi^2).*(a+b)*(b-a).^2 %equation for Volume
A(jj) = pi^2*(b^2-a.^2) %equation for Area
end
plot(V,A) %plot Volume vs. Area

More Answers (1)

David Hill
David Hill on 7 Dec 2020
Edited: David Hill on 7 Dec 2020
No loop needed.
a=.25:.25:4;
b=a+2;
V=(.25*pi^2).*(a+b).*(b-a).^2;
A=pi^2*(b.^2-a.^2);
plot(V,A);

Categories

Find more on Image Processing Toolbox in Help Center and File Exchange

Products


Release

R2020b

Community Treasure Hunt

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

Start Hunting!