Matlab - Calculo de valores máximos

 
Vista:
sin imagen de perfil
Val: 55
Ha aumentado su posición en 2 puestos en Matlab (en relación al último mes)
Gráfica de Matlab

Calculo de valores máximos

Publicado por Pilar (35 intervenciones) el 21/04/2017 22:57:23
Tengo una serie de datos en un vector A y debo obtener los dos valores máximos en cada ejecución del programa, sé que para obtener el mayor se utiliza el comando max(A) pero ¿cómo se puede obtener el segundo máximo?.

Por ejemplo si tengo 16 números A=[24 20 34 28 10 28 47 57 0 17 35 39 76 11 15 100] el primer máximo que es 100 sería 1M=max(A)=100 pero, ¿cómo puedo codificar que muestre el segundo número mayor? que, en este caso, sería el 76, espero puedan ayudarme. De antemano gracias.
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
Imágen de perfil de Ricardo
Val: 60
Ha aumentado su posición en 2 puestos en Matlab (en relación al último mes)
Gráfica de Matlab

Calculo de valores máximos

Publicado por Ricardo (42 intervenciones) el 22/04/2017 03:00:14
1
2
3
4
5
6
7
clc
clear
A=[24 20 34 28 10 28 47 57 0 17 35 39 76 11 15 100]
max1=max(A)
AA=setdiff(A,max1)
max2=max(AA)
max=[max1,max2]

Tal vez sea un poco largo pero es lo único que se me ocurre, saludos
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
Imágen de perfil de JESUS DAVID ARIZA ROYETH
Val: 3.309
Plata
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

Calculo de valores máximos

Publicado por JESUS DAVID ARIZA ROYETH (1818 intervenciones) el 22/04/2017 04:51:47
Sin desmeritar la respuesta de Ricardo :


1
2
3
4
A=[24 20 34 28 10 28 47 57 0 17 35 39 76 11 15 100];
Ao=sort(A,'Descend');
max1=Ao(1);
max2=Ao(2);
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
Imágen de perfil de JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

Calculo de valores máximos

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 22/04/2017 16:23:04
1
2
3
4
clear all
A=[24 20 347 28 10 28 47 57 0 17 35 39 76 11 15 600]
B=A~=max(A);
[seg_maximo]=max(A(B))


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
>> segundo_maximo
A =
    24    20    34    28    10    28    47    57     0    17    35    39    76    11    15   100
seg_maximo =
    76
>> segundo_maximo
A =
    24    20   347    28    10    28    47    57     0    17    35    39    76    11    15   100
seg_maximo =
   100
>> segundo_maximo
A =
    24    20   347    28    10    28    47    57     0    17    35    39    76    11    15   600
seg_maximo =
   347

Saludos
JOSE JEREMIAS CABALLERO
Asesor de Proyectos con Matlab
Servicios de programación matlab


http://matlabcaballero.blogspot.com
https://www.facebook.com/matlabcaballero/
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