Java - ¿cuál es la forma de sacar el tercer número mayor de x resultados?

   
Vista:

¿cuál es la forma de sacar el tercer número mayor de x resultados?

Publicado por Raamses (2 intervenciones) el 31/07/2017 20:47:49
Hola, ¿quiero saber cuál es la forma de sacar el primero, segundo y el tercer número mayor de x resultados?, lo estoy haciendo con vectores en Java (NetBeans). El problema es que no puedo sacar el tercero mayor.
Aquí los resultados que me da el programa que hice:
Resultados:(1)204
Resultados:(2)33
Resultados:(3)360
Resultados:(4)154
Resultados:(5)900

El número mayor es: 900
El segundo número mayor es: 360
El tercer número mayor es: 900

Como pueden notar el tercer número mayor, es igual que el primero, lo cual es lo que quiero corregir.
Aquí el código que utilice para sacar el primero, segundo y el tercero.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
for (int r = 0; r < 5; r++) {
        if(resultado[r]>primero){
           primero=resultado[r];
    }
    }
    System.out.println("");
    System.out.println("El numero mayor es: "+primero);
 
    for (int r = 0; r < 5; r++) {
        if(primero!=resultado[r]){
 
        if(resultado[r]>segundo){
          segundo=resultado[r];
    }
    }
    }
    System.out.println("El segundo numero mayor es: "+segundo);
 
    for (int r = 0; r < 5; r++) {
        if(resultado[r]!=primero ){
 
    }
        if(segundo!=resultado[r]){
 
    }
        if(resultado[r]>tercero){
            tercero=resultado[r];
    }
    }
    System.out.println("El tercer numero mayor es: "+tercero);
 }
}
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 Sebastian

¿cuál es la forma de sacar el tercer número mayor de x resultados?

Publicado por Sebastian (65 intervenciones) el 01/08/2017 04:53:42
Hola!!
El error esta en el ultimo ciclo, por que abres el condicional, luego los cierras luego abres el segundo luego lo cierras y luego el tercero, esto hace que el primero y el segundo no hagan nada, tienen que estas anidados para que funcione

1
2
3
4
5
6
7
8
9
10
11
12
for (int r = 0; r < 5; r++) {
        if(resultado[r]!=primero ){
 
                 if(segundo!=resultado[r]){
 
                           if(resultado[r]>tercero){
                                    tercero=resultado[r];
                           }
                 }
       }
}
System.out.println("El tercer numero mayor es: "+tercero);

Espero te sirva
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Krlos Kstro

¿cuál es la forma de sacar el tercer número mayor de x resultados?

Publicado por Krlos Kstro (31 intervenciones) el 01/08/2017 23:58:00
Mas simple asi....

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
import java.util.Arrays;
public class JavaApplication4 {
    public static void main(String[] args) {
      int resultado[]=new int[5];
      resultado[0]=100;
      resultado[1]=300;
      resultado[2]=150;
      resultado[3]=350;
      resultado[4]=450;
      Arrays.sort(resultado);
      System.out.println("Primero: "+resultado[4]);
      System.out.println("Segundo: "+resultado[3]);
       System.out.println("Tercero: "+resultado[2]);
    }
 
}


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

¿cuál es la forma de sacar el tercer número mayor de x resultados?

Publicado por Raamses (2 intervenciones) el 02/08/2017 21:13:53
Hola Sebastian si me sirvió , gracias y saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Revisar política de publicidad