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 commentaires

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

Connectez-vous pour commenter.

Réponses (1)

Jan
Jan le 9 Jan 2013

0 votes

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

Catégories

Produits

Tags

Aucun tag saisi pour le moment.

Question posée :

le 9 Jan 2013

Community Treasure Hunt

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

Start Hunting!

Translated by