Ir ao conteúdo
  • Cadastre-se

Dúvida em ordenação


djebs

Posts recomendados

Olá galera, estou com dúvidas em um exercício: Criar um programa (Modelar e Implementar):

● Entre com 3 valores numéricos inteiros;
● Imprimir na tela os 3 valores ordenados;
● Imprimir na tela a soma dos 3 valores;
● Fazer a mesma coisa para valores flutuantes;
● Otimizar os dois programas em termo de
modelagem.
 
Como irei ordenar três valores sem usar vetor? Pensei em fazer ifs mas fica um código bem tosco.
Link para o comentário
Compartilhar em outros sites

O que você chama de vetor? E porque não pode utilizar?

 

array = coleção de tamanho pré-determinado

vetor = coleção de tamanho dinâmico

 

Se você é obrigado a utilizar 3 variáveis, então, realmente não existe forma de fugir da coleção de if's encadeados. Poste um trecho de código do que você bolou até agora e vemos no que podemos ajudar.

 

 

Falouzs!!

Link para o comentário
Compartilhar em outros sites

  • 5 semanas depois...
  • Membro VIP

Não precisa de if encadeado.

Basta você alimentar a collection e depois utilizar o Collections.sort

Ou então alimentar uma array, transforma-la em Lista, e utilizar a Collections.sort

 

Se você não puder usar coleção e nem utilizar array (vetor), então você poderia utilizar uma variável auxiliar e ir checando se o valor dela é menor... assim você não precisa encadear tantos ifs.... mas fica chato de fazer....

Link para o comentário
Compartilhar em outros sites

  • 3 anos depois...
package ordenacao;
import java.util.Scanner;  
public class ordenacao 
{  
   public static Scanner vet;
public static void main (String args []){  
       vet = new Scanner (System.in);  
        int elementos[] = new int[3];  
        for (int i=0; i<3; i++){  
            System.out.printf ("Informe o numero %d:",i);  
            elementos = vet.nextInt();  
        }  
        ordena(elementos);
        System.out.println("Numeros Ordenados: ");
        for (int numero : elementos){
            System.out.println(numero);
        }
    }  
   public static void ordena(int elementos[]){  
        int cont1, cont2,aux;  
            for(cont1 =0; cont1<3; cont1++){  
                for(cont2 =0; cont2 <2; cont2++){  
                   if(elementos[cont2]> elementos[cont2+1]){  
                        aux = elementos[cont2];  
                        elementos[cont2] = elementos[cont2+1];  
                        elementos[cont2+1] = aux;  
                    }  
                }  
            }              
   }      
}

apesar de utilizar o vetor acho uma forma interessante de resolver . fiz utilizando  o eclipse.

Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...