Ver Mensaje Individual
  #1 (permalink)  
Antiguo 15/10/2011, 19:01
link01
 
Fecha de Ingreso: octubre-2011
Mensajes: 58
Antigüedad: 13 años, 1 mes
Puntos: 0
Controlar las veces que se imprime un valor en un ciclo

Estoy haciendo un programa que recibe un arreglo de números introducido por teclado. El programa debe decir la cantidad de veces que se repite cada número. Por ejemplo si entro los valores: 1,1,1,3,3,4,3,1. Debe de decir que el #1 se repitió 4 veces, el #3 se repitió 3 veces, el #4 se repite 1 vez.

Esa parte la tengo hecha, pero problema viene al darle salida a los datos que me repite lo mismo tantas veces como se repita el número. En el ejemplo anterior, saldría:
Código:
Los números que introdujo son: 1, 1, 1, 3, 3, 4, 3, 1, 
El número 1 se repite 4
El número 1 se repite 4
El número 1 se repite 4
El número 3 se repite 3
El número 3 se repite 3
El número 4 se repite 1
El número 3 se repite 3
El número 1 se repite 4
Pero lo ideal sería que cada uno, solo saliera una vez:
Código:
Los números que introdujo son: 1, 1, 1, 3, 3, 4, 3, 1, 
El número 1 se repite 4
El número 3 se repite 3
El número 4 se repite 1
Este es el código:
Código Java:
Ver original
  1. for(int i=0;i<cantidad;i++){
  2.             vector[i] = s.nextInt();
  3.         }
  4.        
  5.         //Cuenta las veces se repite cada numero
  6.         int j=0;
  7.         for(int i=0;i<cantidad;i++){
  8.             j = 0;
  9.             while(j<cantidad){
  10.                 if(vector[i] == vector[j]){
  11.                     apariciones[i]++;
  12.                 }              
  13.                 j++;
  14.             }
  15.         }
  16.        
  17.         //Muestra los datos
  18.         for(int i=0;i<cantidad;i++){
  19.             System.out.println("\nEl número " +vector[i]+ " se repite " +apariciones[i]);
  20.         }
__________________
La libertad más difícil de conservar es la de equivocarse. - Morris Wes

Lo que faltaba en internet: http://binar10s.blogspot.com/