Going up from negative in for loop counter

13 Ansichten (letzte 30 Tage)
Crista
Crista am 11 Sep. 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.

Akzeptierte Antwort

Azzi Abdelmalek
Azzi Abdelmalek am 11 Sep. 2013
Bearbeitet: Azzi Abdelmalek am 11 Sep. 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')

Weitere Antworten (1)

Mahdi
Mahdi am 11 Sep. 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 Kommentar
Mahdi
Mahdi am 11 Sep. 2013
Please note that you should avoid for-loops to plot things like this because they`ll be resource-consuming.

Melden Sie sich an, um zu kommentieren.

Community Treasure Hunt

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

Start Hunting!

Translated by