Comparar los dígitos de un numero
Hola.
Lo que quiero hacer es un programa donde ponga un número decimal de 5 digitos (ej. 0.85963) y comparar los dígitos que tiene ese número, como en el Poker
Por ejemplo si tengo el número:
0.25855 veo que tengo tres "5" entonces es una tercia
0.12345 veo que todos los números son diferentes y no tengo nada
0.41444 veo que tengo cuatro "4" entonces es poker.
Como podría hacer esto en el c++.
Gracias
Lo que quiero hacer es un programa donde ponga un número decimal de 5 digitos (ej. 0.85963) y comparar los dígitos que tiene ese número, como en el Poker
Por ejemplo si tengo el número:
0.25855 veo que tengo tres "5" entonces es una tercia
0.12345 veo que todos los números son diferentes y no tengo nada
0.41444 veo que tengo cuatro "4" entonces es poker.
Como podría hacer esto en el c++.
Gracias
Lo primero que podrías hacer es separar los números, puedes multiplicarlo por 10, 100, y así y redondearlo y meterlo en un array, así tendrás los números por separado.
Después puedes construir un bucle for dentro de otro para ir recorriendo el array y poder comparar los números y así efectuar la acción que creas conveniente.
Bye
Después puedes construir un bucle for dentro de otro para ir recorriendo el array y poder comparar los números y así efectuar la acción que creas conveniente.
Bye
Una opción es la que te dice Pigma.
Otra opción es convertirlo en cadena
float variable = 0.54678;
char cadena [10]; /* Pones un tamaño adecuado */
sprintf (cadena, "%8.5f", variable); /* Convierte el número a cadena con 8 caracteres de los cuales 5 son decimales, es decir, <signo>0.<5decimales> */
Ahora puedes comparar caracteres dentro de la cadena
Se bueno.
Otra opción es convertirlo en cadena
float variable = 0.54678;
char cadena [10]; /* Pones un tamaño adecuado */
sprintf (cadena, "%8.5f", variable); /* Convierte el número a cadena con 8 caracteres de los cuales 5 son decimales, es decir, <signo>0.<5decimales> */
Ahora puedes comparar caracteres dentro de la cadena
Se bueno.
