Borrar filtros
Borrar filtros

Subscript indices must either be real positive integers or logicals.

2 visualizaciones (últimos 30 días)
i got this error in this code i don't know why.
c=[x(1:end-1,:),x(2:end,:)];
dx=c(:,2)-c(:,1);
t=[y(1:end-1,:),y(2:end,:)];
dy=t(:,2)-t(:,1);
ra=[];
rb=[];
for i=1:size(dx)
if dx(2i-1)>0 & dy(2i)<0;
ra(2i-1)=1;
ra(2i)=1;
end
if dy(2i-1)>0 & dx(2i)<0;
rb(2i-1)=1;
rb(2i)=1;
end
end
  1 comentario
Adam
Adam el 25 de Oct. de 2018
Which line is the error on? You can use the stop/pause on errors debug option from the Breakpoints menu to have the code stop at the line causing the error. Then it is trivial to work out what is wrong by looking at any subscript indices you are using in the command window.

Iniciar sesión para comentar.

Respuesta aceptada

jonas
jonas el 25 de Oct. de 2018
Editada: jonas el 25 de Oct. de 2018
It's hard to tell without having some input, but these types of lines are definitely wrong:
ra(2i)=1;
i is being interpreted as imaginary, which is why you should not use i as a looping variable.
ans =
0.0000 + 2.0000i
Could be other errors as well.
  6 comentarios
alireza kooshafar
alireza kooshafar el 25 de Oct. de 2018
I have two matrices(dx dy), I'm looking for a condition to check 1. If the first array of dx was a positive (negative), the first array of dy be a negative (positive) array. 2. If the event is the first one, check if the odd arrays of dx and dy will all be the same and the even arrays are exactly the opposite.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Matrix Indexing en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by