MATLAB: How to plot a graph with a for loop

for loopplot

I have a question where I'm required to create a for loop and then use it to plot a graph. I have n = 0,1,2 … 10 and need to plot cos(n*pi*x/2) for this. My current code looks like this as I'm trying to store the outputs of the for loop in an array
syms x n b a
nvalues = zeros(1, 10);
for n = 1:11
S = cos((n-1)*pi*x*(1/2));
nvalues(n) = S;
end
nvalues

Best Answer

You need to define x with linspace() and then use hold on in the loop:
x = linspace(0, pi/4, 500);
for n = 0 : 10
S = cos(n*pi*x / 2);
%nvalues(n) = S;
plot(x, S, 'LineWidth', 2);
hold on;
end
grid on;
xlabel('x', 'FontSize', 16);
ylabel('S', 'FontSize', 16);
title('11 curves', 'FontSize', 16);