how to correct this index error ?

su=4;
sv=4;
fh=[1 2 3 4; 2 3 4 5 ; 5 6 7 8 ; 1 2 3 5];
for i=-4:4
for j=-4:4
a(i,j)=1;
for u=1:su-2
for v=1:sv
if (fh(u,v)==i && fh(u+1,v)==j)
dell=1;
else
dell=0;
end
a(i,j)=a(i,j)+dell;
end
end
end
end
..when i run this code i got this error..
??? Attempted to access a(-4,-4); index must be a positive integer or logical.
Error in ==> testit at 6
a(i,j)=1;

2 comentarios

Andrei Bobrov
Andrei Bobrov el 9 de En. de 2013
see this answer
Jan
Jan el 9 de En. de 2013
Please, prasana, use meaningful tags. Almost all questions in this forum concern Matlab code.

Iniciar sesión para comentar.

Respuestas (1)

Jan
Jan el 9 de En. de 2013

0 votos

You are working with Matlab for at least 3 month. It is time to read the Getting Started chapters to find out, that indices must be positive integers. Therefore you cannot access the element a(-4, -4). This seems to be a trivial solution:
for i = 1:9
for j = 1:9

Categorías

Más información sobre Startup and Shutdown en Centro de ayuda y File Exchange.

Productos

Etiquetas

Aún no se han introducido etiquetas.

Preguntada:

el 9 de En. de 2013

Community Treasure Hunt

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

Start Hunting!

Translated by