agregar filas
Publicado por Javi (4 intervenciones) el 24/05/2009 02:12:55
alguien me puede decir, porque este proogramilla que va creando matrices de tres dimensiones y que va agregando filas nunca pasa de la dimension (5,x,x) por muchos bucles que le mande hacer
RT(1,:,1)=[1,0,0,0,0,1]; %dato de entrada
e=1;
for j=1:7
for k=1:e
m=1;
if RT(k,2,j)~=0;
RT(m,:,j+1)=[0,0,1,0,0,0];
m=m+1;
end
if RT(k,3,j)~=0;
RT(m,:,j+1)=[0,0,-1,1,0,0];
m=m+1;
RT(m,:,j+1)=[0,1,-1,0,0,0];
m=m+1;
RT(m,:,j+1)=[0,0,1,0,0,0];
m=m+1;
end
if RT(k,4,j)~=0;
RT(m,:,j+1)=[0,1,1,-1,0,0];
m=m+1;
RT(m,:,j+1)=[0,0,1,0,0,0];
m=m+1;
end
if RT(k,5,j)~=0;
RT(m,:,j+1)=[0,0,0,0,-1,1];
m=m+1;
end
if RT(k,6,j)~=0;
RT(m,:,j+1)=[0,1,0,0,1,-1];
m=m+1;
end
end
end
Se que puede ser un poco lioso de entender ahora mismo lo que hace, para mi tiene un sentido, pero no consigo que m pase de 6, es decir que añada mas de 5 filas en la matriz RT(5,6,j) por muchos j que de, cuando por logica deberia crecer indefinidamente, pero parece que llega un momento en que no le apetece hacer mas if's. En serio no encuentro razon logica alguien puede ayudarme???
RT(1,:,1)=[1,0,0,0,0,1]; %dato de entrada
e=1;
for j=1:7
for k=1:e
m=1;
if RT(k,2,j)~=0;
RT(m,:,j+1)=[0,0,1,0,0,0];
m=m+1;
end
if RT(k,3,j)~=0;
RT(m,:,j+1)=[0,0,-1,1,0,0];
m=m+1;
RT(m,:,j+1)=[0,1,-1,0,0,0];
m=m+1;
RT(m,:,j+1)=[0,0,1,0,0,0];
m=m+1;
end
if RT(k,4,j)~=0;
RT(m,:,j+1)=[0,1,1,-1,0,0];
m=m+1;
RT(m,:,j+1)=[0,0,1,0,0,0];
m=m+1;
end
if RT(k,5,j)~=0;
RT(m,:,j+1)=[0,0,0,0,-1,1];
m=m+1;
end
if RT(k,6,j)~=0;
RT(m,:,j+1)=[0,1,0,0,1,-1];
m=m+1;
end
end
end
Se que puede ser un poco lioso de entender ahora mismo lo que hace, para mi tiene un sentido, pero no consigo que m pase de 6, es decir que añada mas de 5 filas en la matriz RT(5,6,j) por muchos j que de, cuando por logica deberia crecer indefinidamente, pero parece que llega un momento en que no le apetece hacer mas if's. En serio no encuentro razon logica alguien puede ayudarme???
Valora esta pregunta


0