Matlab - vector2

 
Vista:

vector2

Publicado por ross (6 intervenciones) el 30/10/2007 08:18:34
a ver... habia dicho que no me importaba perder el vector pero... creo que no es asi.

yo tengo por ejemplo:

a-un vector con distancias
b-un vector con alturas
c-otro vector con otro valor --> en este es en el que quiero encontrar el mayor.

el elemento 1 de cada vector esta relacionado el dos igual el tres igual; es decir a la distancia a1 con altura b1 pasa c1. A la distancia a2 con altura b2 pasa c2....
Cuando yo encuentro el mayor valor de c para las operaciones que tengo q hacer despues necesito saber cual es la altura y la distancia para ese valor , amos que ademas de no poder perder el vector necesito saber la posicion para acceder a los otros dos vectores.

A ver ahora... ;)
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:vector2

Publicado por Kike (304 intervenciones) el 30/10/2007 15:59:37
Tal vez te sirva esto:

% m1 es una matriz que contiene los tres vectores originales.

m1=[1 50 2 65 1; 1 2 3 4 5; 10 20 25 30 35]

% La primera fila es la que se ordenará de mayor a menor
ordenado=rot90(rot90(sort(m1(1,:))))

m2=zeros(size(m1)); % matriz de ceros
k=1; % contador

% Ahora se hacen corresponder los datos de las otras filas según el orden
% de la primera
while k<length(ordenado)
posicion=find(m1(1,:)==ordenado(k))
% si hay elementos repetidos en la primera fila de m1 hago un for
for n=1:length(posicion)
m3=m1(2:end,posicion(n));
m2(:,k)=[ordenado(k);m3];
k=k+n;
end
end

m2 % muestro la matriz ordenada
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar