Unconfigured Ad Widget

Collapse

Anúncio

Collapse
No announcement yet.

Metodo de ordenação

Collapse
X
 
  • Filter
  • Tempo
  • Show
Clear All
new posts

  • Font Size
    #1

    Dúvida Metodo de ordenação

    Meu prof. me passou o "melhor" codigo de ordenção do metodo BubbleSort, mas não estou conseguindo rodar ele, acho q tem algo errado nele !! se puderem me ajudar agradeço !!

    Código:
    public class BubbleSort3
    {
    	public static void main(String args [ ]) 
             {
    		int X[ ]  = new int[5];
    		int n, i, aux, troca;
    		Scanner entrada = new Scanner (System.in);
    
                      // carregando os números no vetor
    		for ( i = 0 ; i <= 4 ; i++)
                      {
                        System.out.println(“Digite os 5 números”);
                        X [ i ] = entrada.nextInt( );
                       }
    		 
                       // ordenando de forma crescente 
                        n = 1;
                        troca = 0;
                        for(i = 0; i <= 3; i++)
                       {	
                              		if ( X [ i ] < X [ i +1])
                                         {
                                                 troca = 1; 
    					aux   =  X [ i ];
    					X [ i ] = X [ i +1];
    					X [ i +1] = aux;
    				     }
    			         }
                                        n = n + 1;
    		   }
                        // Mostrando o vetor ordenado
    	 	for ( i = 0 ; i <= 4 ; i++)
    	          {
    	    	System.out.println( X [ i ] + "  ");
    	           }
    
    	}
    
    }

  • Font Size
    #2
    Segue o código resolvido:

    Código:
    import java.util.Scanner;
    
    public class BubbleSort3
    {
    
        
        public static void main(String args [ ]) 
             {
                 
             
             
            int X[ ]  = new int[5];
        	int n, aux;
    		Scanner entrada = new Scanner (System.in);
    
                      // carregando os números no vetor
    		for ( int i = 0 ; i <= 4 ; i++)
                      {
                        System.out.println("Digite os 5 números");
                        X [ i ] = entrada.nextInt();
                       }
    		 
                       // ordenando de forma crescente 
                        n = 1;
                        for(int i = 0; i <= 3; i++)
                       {	
                              		if (X [ i ] < X [ i +1])
                                         {
    					aux   =  X [ i ];
    					X [ i ] = X [ i +1];
    					X [ i +1] = aux;
    				     }
    			         }
                                        n = n + 1;
    		   
                        // Mostrando o vetor ordenado
    	 	for (int i = 0 ; i <= 4 ; i++)
    	          {
    	    	System.out.println( X [ i ] + "  ");
    	           }
    
    	}
    
    }
    Alterações que eu fiz:
    1. Apaguei a variável "troca" que não era usado em lugar nenhum;
    2. Como você pode ver, nos for, eu declarei o int i = 0.
    3. Fiz a importação da classe Scanner;
    4. Arrumei as aspas, que não eram as aspas do teclado, mas a copiada de algum outro lugar - lembrando as de citação do Word.


    Teste aí e qualquer coisa, só me dar um toque.
    Se expressarmos gratidão pelo que temos, teremos mais para expressar gratidão... Agradeça!

    Comment


    • Font Size
      #3
      e caso o vetor já esteja ordenado no "meio" das comparações tem como eu fazer com que o laço pare mostre eles ordenado ??

      Obg. !!

      Comment


      • Font Size
        #4
        Postado Originalmente por matheusviana8 Ver Post
        e caso o vetor já esteja ordenado no "meio" das comparações tem como eu fazer com que o laço pare mostre eles ordenado ??

        Obg. !!
        Você poderia fazer isso, sim. Mas eu não vejo como valendo a pena. Pois para ele saber se o vetor já está ordenando, ele vai ter que entrar em um loop para fazer a verificação - no fim, dará na mesma.
        Se expressarmos gratidão pelo que temos, teremos mais para expressar gratidão... Agradeça!

        Comment

        X
        Working...
        X