# Going up from negative in for loop counter

1 visualización (últimos 30 días)
Crista el 11 de Sept. de 2013
I'm trying to make this code
for x=-10:10;
y=-3*x^2;
end
plot(x,y)
Plot like this code
x=-10:10;
y=-3*x.^2;
plot(x,y,'--o')
I've tried
for x=-10:10
y(x)=-3*x.^2;
end
plot(x,y,'--o')
which doesn't work because I can't have the negative x numbers as y(x). I'm lost on how to fix this. Thank you.
##### 0 comentariosMostrar -2 comentarios más antiguosOcultar -2 comentarios más antiguos

Iniciar sesión para comentar.

Azzi Abdelmalek el 11 de Sept. de 2013
Editada: Azzi Abdelmalek el 11 de Sept. de 2013
You can avoid using negative index
x=-10:10;
n=numel(x);
y=zeros(1,n) % Pre-allocate
for k=1:numel(x)
y(k)=-3*x(k)^2;
end
plot(x,y,'--o')
##### 1 comentarioMostrar -1 comentarios más antiguosOcultar -1 comentarios más antiguos
Crista el 11 de Sept. de 2013
That's perfect! Thank you!

Iniciar sesión para comentar.

### Más respuestas (1)

Mahdi el 11 de Sept. de 2013
When you plot, you`re only plotting the last point because the variable y is inside the for loop (and is not a matrix). Other than what`s been suggested, the way that you can do it is
for x=-10:10;
y=-3*x^2;
plot(x,y)
hold on
end
##### 1 comentarioMostrar -1 comentarios más antiguosOcultar -1 comentarios más antiguos
Mahdi el 11 de Sept. de 2013
Please note that you should avoid for-loops to plot things like this because they`ll be resource-consuming.

Iniciar sesión para comentar.

### Categorías

Más información sobre 2-D and 3-D Plots en Help Center y File Exchange.

### Community Treasure Hunt

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

Start Hunting!

Translated by