MATLAB: Plotting loops, but only empty plot

for loopsloopsMATLABplottingwhile loops

I'm trying to plot the information from my loops, but all I am getting is an empty plot. My code is as follows:
x1 = 1;
while x1<19;
y1(x1)=x1^3-(5*x1)^2+2^x1-10000*x1;
x1=x1+1;
end
for x2=1:20
y2(x2)=20000*log(x2)-3*x2;
x2=x2+1;
end
%Create the plot
figure
plot(x1,y1,'b-',x2,y2,'k-')

Best Answer

Add ‘x’ as an index to create your ‘x1’ vector, and specify x2 as a vector outside the loop:
x = 1;
while x<19;
x1(x) = x;
y1(x)=x1(x)^3-(5*x1(x))^2+2^x1(x)-10000*x1(x);
x=x+1;
end
for x2=1:20
y2(x2)=20000*log(x2)-3*x2;
end
x2=1:20;
%Create the plot
figure
plot(x1,y1,'b-',x2,y2,'k-')