Why it is saying this? Index in position 2 is invalid. Array indices must be positive integers or logical values. Error in Homework (line 21) surf(x,y,F(i,j))

4 views (last 30 days)
x=[-5:5]
y=[-5:5]
for i=1:(x-1);
for j=1:(y-1);
if (x(i)>=0)&(y(j)>=0)
F(i,j)=2.*x(i)+y(j)^2
end
if (x(i)>=0)&(y(j)<0)
F(i,j)=x(i)+y(j)
end
if (x(i)<0)& (y(j)>=0)
F(i,j)=x(i)^2+2*y(j)
end
if (x(i)<0)&(y(j)<0)
F(i,j)=x(i)^2+y(j)^2
else
end
end
end
figure
surf(x,y,F(i,j))

Accepted Answer

Alan Stevens
Alan Stevens on 3 Feb 2022
Like this
x=[-5:5];
y=[-5:5];
for i=1:numel(x)
for j=1:numel(y)
if (x(i)>=0)&&(y(j)>=0)
F(i,j)=2.*x(i)+y(j)^2;
end
if (x(i)>=0)&&(y(j)<0)
F(i,j)=x(i)+y(j);
end
if (x(i)<0)&& (y(j)>=0)
F(i,j)=x(i)^2+2*y(j);
end
if (x(i)<0)&&(y(j)<0)
F(i,j)=x(i)^2+y(j)^2;
else
end
end
end
figure
surf(x,y,F)

More Answers (0)

Community Treasure Hunt

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

Start Hunting!