GUJ Discussões   :   últimos tópicos   |   categorias   |   GUJ Respostas

Como colocar numeros em ordem crescente?


#1

oi galera !!!!

alguem pode me ajudar:

o usuario tem q digitar 10 numeros. aí eu armazeno esses numeros num vetor e depois os apresento em ordem crescente na tela.

Como fazer isso????


#2

Leia todos os dados do usuário e vá armazenando num vetor...

Depois de armazenado no vetor, percorra todo o vetor e compare a posição atual com a posição seguinte, comparando ambas posiçoes e deixando o menor valor na posiçao atual e deixando o maior valor na posiçao seguinte (metodo de ordenação da Bolha)..

Depois é só imprimir :smile:

Exemplo: no vetor temos: |5 | 2 | 1 | 6 | 3 |
A ideia é vc verificar todas as posições, de forma que a primeira posição a ser verificada é a primeira...
Vc tem q comprar o vetor[0] com vetor[1].. No nosso exemplo temos que 2 é menor q 5, então temos que:
-criar uma variavel auxiliar que recebe vetor[1]
-armazenar vetor[1] em vetor[0]
-armazenar aux em vetor[1]

Depois vc vai fazendo isso com todas as posições do vetor

Espero que vc consiga fazer o algoritmo agora... Qualquer duvida posta ae


#3

Mandei uma mensagem repetida sem querer... Desculpe, se possivel alguem apague isso para mim...


#4

oi galera !!!!

alguem pode me ajudar :?:

eu tenho um exercicio pq tenho um duvido :?:

exercicio uma pergunta la em baixo:

:arrow: 1) Faça um programa para gerar n numero inteiros aleatorios e que imprima os numeros em ordem crescente.

:arrow: 2)Faça um programa para gerar n numero inteiros aleatorios e que imprima os numeros em ordem decrescente.

Como fazer isso???? por favor, faz pra mim ai. :frowning: [/quote]

abraçosss pra ti...


#5

Fazer o seu trabalho é complicado, né?

O Daniel acabou de dizer como é a lógica da situação ali em cima, você só tem que aplicar a idéia pra fazer na ordem crescente e mudar a condição pra fazer na ordem descrescente.

Tente, e qualquer dúvida volte aqui.
:}


#6

Você pediu duas coisas antagônicas - uma é "como é que se faz tal coisa", o que induz a imaginarmos que você quer aprender a fazer e que você mesmo vai fazer isso.

Logo depois pediu "por favor, façam para mim", o que induz a imaginarmos que você quer ganhar os pontos da sua lição de casa sem aprender a fazer a tal coisa.

De qualquer maneira, vou fingir que não li que você está pedindo o bolo pronto, com uma cereja em cima.

1) Para gerar números aleatórios, use a classe Random (java.util.Random).
2) Para ordenar esses números, se você quer usar coisas prontas, pode usar a classe java.util.Arrays, método sort. Ele põe em ordem crescente; para ficarem em ordem decrescente, pegue os números em ordem crescente e chame java.util.Arrays, método reverse. Se não quer as coisas prontas, então siga a sugestão do Daniel e use o método de "bubblesort".


#7

BOM DIA GALERAAAAA.

Ei Andrea Laranjeira, primeiramente quero lhe dizer que você é um belo pé de laranja com belas laranjas.

Segundo, meu anjo, você tem que tentar fazer seus trabalhos se não você será igual eu, preguiçoso e fadigoso.

Olha, tente fazer esses programinhas e a hora que você não conseguir realmente sair do lugar, aí você posta seu programa aqui e pergunta a sua dúvida.

Veja, até eu que tenho só a metade do cérebro consegui pelo menos chegar até a metade dos programinhas que eu fazia, quando surgia uma dúvida, eu colocava os bagaças mal feitas aqui e perguntava a minha dúvida pro pessoal que me davam dicas infalíveis.

E mais uma coisa meu anjo, o pessoal daqui do guj deteeeeeeesta quando alguém pedi pra eles fazerem os programas.

Se eles ficarem fazendo os programas dos outros, ninguém aprende nada.

Até mais fofa.

Fuiiiiiii.


#8

É fake

foi criado só pra zuar

pô laranjeira não avacalha o forum.....


#9

Questão do vetor:

int vet[] = new int[10];
//le dados do usuario
for(int i=0; i < vet.length; i++)
{
//aqui vc le os dez valores do usuario e armazena no vetor
}
//ordenar o vetor
for(int j=0; j < vet.length; j++)
{
//usa o mesmo metodo de ordenação que foi citado acima( metodo da bolha )
//Este metodo é o mais facil de todos
//Olha este site
http://pt.wikipedia.org/wiki/Bubble_sort
}

===============================================

1) Faça um programa para gerar n numero inteiros aleatorios e que imprima os numeros em ordem crescente.

2)Faça um programa para gerar n numero inteiros aleatorios e que imprima os numeros em ordem decrescente.

GERAR NUMERO ALEATORIO

A classe Math metodo Random() gera este numero pra vc, mas este numero gerado esta entre 0,0 e 1,0;
Vc deve trata-lo dependendo do seu uso.

Ex:
quero numeros entre 2,0 e 20,0

double aleatorio = 2 + ( Math.Random() * 20 );

Esta faixa de numeros esta entre 2,0 ate 20,0
Se quiser inteiro, coloca um cast ---> int valor = (int)(aleatorio);

IMPRIMIR EM ORDEM CRESCENTE E DECRESCENTE

Vc pode usar o mesmo metodo da bolha citado acima
so precisa mudar a condição de comparação .

2 opçoes
---> Cria 2 vetores diferentes e ordena cada um de um jeito: CRESCENTE e DECRESCENTE
ou
---> Cria um vetor ordena por exemplo crescente e imprime do inicio para o fim: CRESCENTE e do fim para o inicio DECRESCENTE

Ps.: Fica a sua escolha, usa o metodo da bolha citado acima.

n = (int)(2 + ( Math.Random() * 20 ));//numero aleatorio
int vet = new int[ n ];//tamanho vetor == quantidade de numeros aleatorios
for()
{
//preencher == o descrito acima
}
for()
{
//ordenar
}

Faça bom uso.
Acho que ja da para vc continuar sozinha daqui.


#10

Aproveita e dá uma olhada na classe Collections. Ela permite reordenar coleções facinho facinho...


#11

Bom dia
Pessoal gostaria de uma ajuda ....
estou tentando ordenar um vetor em ordem crescente... e ao longo do algoritmo cheguei nisso

escreval("Digite a quantidade de numeros a serem digitados")
leia(qtd)
         para i de 1 ate qtd faca
         escreval("Digite o",i,"º numero")
         leia(numeros[i])
         fimpara
              para j de 1 ate qtd faca
               se (numeros[i] > numeros[i+1]) entao
              aux[j+1]:=numeros[i]
              vtordenado[j]:=numeros[i+1]
              vtordenado[j+1]:=aux
              fimse
                   para k de 1 ate qtd faca
                        escreval(vtordenado[j])
                   fimpara
         fimpara

alguem poderia me ajudar em relação a isso ?
........................................................................
obrigado bom dia !


#12

ops desculpa, esse eh o ultimo que tava elaborando !!

escreval("Digite a quantidade de numeros a serem digitados")
leia(qtd)
         para i de 1 ate qtd faca
         escreval("Digite o",i,"º numero")
         leia(vt[i])
         fimpara
              para j de 1 ate qtd faca
                   para i de 1 ate qtd faca
                   se (vt[i] > vt[i+1]) entao
                   vtordenado[j+1]:=vt[i]
                   vtordenado[j]:=vt[i+1]
                   fimse
                   fimpara
              fimpara
                   para j de 1 ate qtd faca
                        escreval(vtordenado[j])
                   fimpara

#13

Ae pessoal, consegui fazer !!

segue abaixo codigo !!

algoritmo "semnome"
// Função :
// Autor :
// Data : 21/5/2009
// Seção de Declarações
var
vet:vetor[1..100]de inteiro
i,j,k,aux,qtd,l: inteiro
inicio
// Seção de Comandos
escreval("digite o a quantidade de numeros que tera seu vetor")
leia(qtd)
para i de 1 ate qtd faca
escreval("Digite o",i,"º numero")
leia(vet[i])
fimpara
para k de 1 ate i-1 faca
para j de 1 ate qtd faca
se vet[j] > vet[j+1] entao
aux := vet[j];
vet[j] := vet[j+1];
vet[j+1] := aux;
fimse

     fimpara
 fimpara
 para l de 1 ate j faca
      escreval(vet[l])
 fimpara

fimalgoritmo


#14

se você for usar array, faça assim:

import java.util.Arrays;
	public class Array2 {
		public int[]a;
		Array2(){
		a= new int[10];
		}
	public void carrega(){
		for (int i=0; i<a.length;i++)  
			a[i]= (int)(100* Math.random())+10;
		//o meu array é preenchido randomicamente, mas o seu tera que ser digitado então faça um metodo para inserir os numeros digitados no array
		}
        public void ordena(){
		Arrays.sort(a); //aqui ele pega todos os numeros do array e ordena em ordem crescente
		}
}

#15

A correto entendi !!

Muito Obrigado mesmo pela atenção !!!
Bom dia pra todo mundo !


#16

Solução em Java:

    int vet[] = new int[5];
    int aux = 0;

    //lendo os valores do vetor
    for (int i = 0; i < vet.length; i++) {
        vet[i] = Integer.parseInt(JOptionPane.showInputDialog(null, "Informe o elemento " + i));
    }

    //ordenação
    for (int i = 0; i < vet.length; i++) {
        for (int j = 0; j < vet.length - 1; j++) {
            if (vet[j] > vet[j + 1]) {
                aux = vet[j];
                vet[j] = vet[j + 1];
                vet[j + 1] = aux;
            }
        }
    }

    //imprimindo valores do vetor ordenado
    for (int i = 0; i < vet.length; i++) {
        JOptionPane.showMessageDialog(null, "Valor da posição " + i + " -->" + vet[i]);

    }

Um abraço.


#17

Jovem,

Visto que você é novo em nossa comunidade, peço que leio as regras do forum antes de ressucitar um tópico de 2008, onde existem diversas soluções à epoca.


#18