Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Matheus Brito

[Resolvido] Bolha em java randomicamente

Recommended Posts

ola pessoal o problema eh o seguinte to fazendo um vetor com 15 elementos serem gerados randomicamente e depois logo em seguida devo ordena-los, com o bublle sort, so que nao to conseguindo, segue codigo:

 

 

/**
 * @(#)bolha.java
 *
 *
 * @author 
 * @version 1.00 2007/11/15
 */

public class bolha {

	public static void main(String args[]) {
		
		int[] vetor_bolha=new int[15];
		int i,j,k,temp=0;
		//System.out.println("Elementos desordenados\n");
		for(i=0;i<15;i++){
			vetor_bolha[i]=1+(int) (Math.random()*15);
			//System.out.println(vetor_bolha[i]);
		}
	
	   
		System.out.println("Elementos ordenados\n");
		
		for(j=0;j<vetor_bolha.length;j++)
		for(k=j+1;k<vetor_bolha.length-1;k++){
			
			if(vetor_bolha[j]>vetor_bolha[k]){
				
				vetor_bolha[j]=vetor_bolha[k];
				vetor_bolha[k]=temp;
				temp=vetor_bolha[j];
			}
		
				System.out.println(vetor_bolha[j]);	
			}		

			
	
	}
			
}

deem uma forca aew vlw.

 

P.S o resultado ta saindo muito mais numeros que 15.

Compartilhar este post


Link para o post
Compartilhar em outros sites

E ai kara beleza?

 

Nao resolveu nao, ta tendo algum problemas nos for, mas sei que ta certo, porque tao saindo 30 ou mais numeros....

abs

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tenta assim:

 

for(j=0; j<vetor_bolha.length-1; j++){
	  for(k=0; k<vetor_bolha.length-1; k++){	  
		 if(vetor_bolha[k] > vetor_bolha[k+1]){ // se atual maior que o proximo faz a troca
			 temp = vetor_bolha[k];
			 vetor_bolha[k]=vetor_bolha[k+1];
			 vetor_bolha[k+1]=temp;
		 }
	  }
   }

Compartilhar este post


Link para o post
Compartilhar em outros sites

O problema nao está na ordenação e sim na saida tenta ver se você consegue dar como saida o vetor ordenado.

abs

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não sei se é isso que voce quer, ve se é isso.

 

for(j=0; j<vetor_bolha.length-1; j++){
	  for(k=0; k<vetor_bolha.length-1; k++){	  
		 if(vetor_bolha[k] > vetor_bolha[k+1]){ // se atual maior que o proximo faz a troca
			 temp = vetor_bolha[k];
			 vetor_bolha[k]=vetor_bolha[k+1];
			 vetor_bolha[k+1]=temp;
		 }
	  }
   }

   for(i=0;i<15;i++){
	  System.out.println(vetor_bolha[i]);
  }

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu te disse que o problema nao era na ordenação e sim na saída, rsrsrs da até vontade de rir, eu esqueci de colocar o ultimo for pra imprimir o vetor, aff so rindo.

abs e vlw

Compartilhar este post


Link para o post
Compartilhar em outros sites

Opa, foi nada.

Uma besterinha que as vezes dá uma dor de cabeca.

rs

 

http://forum.imasters.com.br/public/style_emoticons/default/natal_tongue.gif

 

Eu te disse que o problema nao era na ordenação e sim na saída, rsrsrs da até vontade de rir, eu esqueci de colocar o ultimo for pra imprimir o vetor, aff so rindo.

abs e vlw

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.