Elementos distintos de una sequencia

Iniciado por Sothu, 6 Diciembre 2015, 19:04 PM

0 Miembros y 1 Visitante están viendo este tema.

Sothu

Buenas! Tengo que crear un programa en c++ que dada una sequencia terminada en 0 o de maximo 10 numeros me diga cuantos hay distintos y no se por donde empezar.
Por ejemplo si se introduce 2 4 5 6 2 2 0 el programa debe decir que hay 4 numeros distintos (ya que el 0 solo es la marca de fin).
Alguna idea?
Gracias!

0xFer

Toma cada uno de los elementos de la secuencia y con un for simplemente ve comprobando si ese elemento existe más de una vez en la secuencia. en caso de que se repita pues ve incrementando una variable que guarde el número de veces que se repite un número y asi.
Código (java) [Seleccionar]
int getRandomNumber(){
    return 4; //chosen by fair dice roll
              //guaranteed to be random
}

Sothu

El problema es que no se comparar los elementos de la sequencia dentro de un for. Solo se me acude como comparar elementos que se introduzcan seguidos mediante otra variable que vaya comparando con la anterior :S

DarK_FirefoX

¿Has pensado algo? Recuerda que no se resuelven ejercicios.

Ahora, pregunto. ¿Es relevante tener en cuenta el orden (tiempo) del algoritmo que utilices?

De igual manera, puedes ordenar la secuencia de menor a mayor, y luego recorrerla y cada vez que vayas de una posición a otra, comprobar si el elemento en esa posición sea diferente al de la anterior, y si lo es, entonces contarlo como número diferente, no contarlo en caso contrario.

Salu2s