Código Dharma
Un código DHARMA es un número positivo de 5 cifras, la primera siempre diferente de cero. Los 4 primeros se llaman ENTIDAD y el último (el dígito de las unidades) es un DIGITO DE CONTROL que se obtiene de los 4 anteriores.
La forma de calcular el DIGITO DE CONTROL a partir de la ENTIDAD es la siguiente.
Se toman los cuatro dígitos de la ENTIDAD enumerando de izquierda a derecha.
Si el primer dígito de la ENTIDAD es par:
- La primera cifra de la entidad se multiplica por 4
- La segunda cifra de la entidad se multiplica por 8
- La tercera cifra de la entidad se multiplica por 5
- La cuarta cifra de la entidad se multiplica por 10
Si el primer dígito de la ENTIDAD es impar:
- La primera cifra de la entidad se multiplica por 9
- La segunda cifra de la entidad se multiplica por 7
- La tercera cifra de la entidad se multiplica por 3
- La cuarta cifra de la entidad se multiplica por 6
Se suman todos los resultados obtenidos.
Se divide entre 11 y nos quedamos con el resto de la división.
A 11 le restamos el resto anterior, y ese es el dígito de control, con la salvedad de que si nos da 10, el dígito es 1.
Crear un programa que solicite un código DHARMA por teclado y determine si es correcto, es decir si su dígito de control está bien calculado de acuerdo al valor de la ENTIDAD del código.
El programa deberá validar que el código de Dharma tecleado es positivo y tiene 5 dígitos. En caso contrario mostrará un mensaje en pantalla que indique "Código Dharma no tiene 5 dígitos" y terminará sin hacer nada más.
Si la validación anterior se supera, el programa presentará en pantalla el dígito de control obtenido del código Dharma tecleado y el dígito de control calculado desde los valores de la ENTIDAD, y un mensaje que indique si el código Dharma es correcto (si ambos dígitos coinciden) o no es correcto (si ambos dígitos no coinciden). Para ello se seguirá el formato indicado más abajo.
Es importante seguir el formato indicado en los ejemplos, incluyendo los acentos (el Juez se encarga de la codificación, por lo que deben introducirse de forma literal en el código). Se recomienda copiar y pegar de los ejemplos para evitar errores.
Entrada
Un número decimal.
Salida
En caso de que el código no tenga 5 dígitos o sea negativo el mensaje "Código Dharma no tiene 5 dígitos".
En otro caso, dos líneas indicando el dígito de control y el calculado con el siguiente formato:
Dígito de control del código Dharma........: X
Dígito de control calculado para la ENTIDAD: X
seguidas de una línea con o bien "El código Dharma es correcto" o bien "El código Dharma NO es correcto".
Ejemplo de entrada 1
77543
Ejemplo de salida 1
Dígito de control del código Dharma........: 3
Dígito de control calculado para la ENTIDAD: 3
El código Dharma es correcto
Ejemplo de entrada 2
12345
Ejemplo de salida 2
Dígito de control del código Dharma........: 5
Dígito de control calculado para la ENTIDAD: 1
El código Dharma NO es correcto
Ejemplo de entrada 3
777
Ejemplo de salida 3
Código Dharma no tiene 5 dígitos
Comentarios