Las letras de los Dni se obtienen dividiendo el número del Dni entre 23 y, según el resto de la división le corresponderá una letra. Veamos la tabla:
Si tenemos un Dni que al dividirlo entre 23 nos diera el resto como resultado 4 por ejemplo, la letra que corresponderá a ese número de Dni es G.
¿Cuál es el operador en Java para calcular el resto? En Java se utiliza el operador % para calcular el resto.
El siguiente programa pide al usuario que introduzca un Dni y luego muestra la letra correspondiente. Veamos el código:
import java.util.Scanner; public class LetraDni { public static void main(String[] args) { //Objeto de la clase Scanner para introducir dni por teclado y //dos variables de tipo int que almacenan el dni y el resto del resultado //de la división Scanner miScanner = new Scanner(System.in); int dni; int resto; //Se pide que se introduzca el número Dni, se almacena en la variable dni //y se realiza la operación para calcular el resto System.out.println("Escriba su número DNI: "); dni = miScanner.nextInt(); resto = dni%23; //Se crea un condicional switch y según el resultado muestra una letra //por pantalla. switch(resto) { case 0: System.out.println("La letra del DNI " + dni + " es " + "T."); break; case 1: System.out.println("La letra del DNI " + dni + " es " + "R."); break; case 2: System.out.println("La letra del DNI " + dni + " es " + "W."); break; case 3: System.out.println("La letra del DNI " + dni + " es " + "A."); break; case 4: System.out.println("La letra del DNI " + dni + " es " + "TG."); break; case 5: System.out.println("La letra del DNI " + dni + " es " + "M."); break; case 6: System.out.println("La letra del DNI " + dni + " es " + "Y."); break; case 7: System.out.println("La letra del DNI " + dni + " es " + "F."); break; case 8: System.out.println("La letra del DNI " + dni + " es " + "P."); break; case 9: System.out.println("La letra del DNI " + dni + " es " + "D."); break; case 10: System.out.println("La letra del DNI " + dni + " es " + "X."); break; case 11: System.out.println("La letra del DNI " + dni + " es " + "B."); break; case 12: System.out.println("La letra del DNI " + dni + " es " + "N."); break; case 13: System.out.println("La letra del DNI " + dni + " es " + "J."); break; case 14: System.out.println("La letra del DNI " + dni + " es " + "Z."); break; case 15: System.out.println("La letra del DNI " + dni + " es " + "S."); break; case 16: System.out.println("La letra del DNI " + dni + " es " + "Q."); break; case 17: System.out.println("La letra del DNI " + dni + " es " + "V."); break; case 18: System.out.println("La letra del DNI " + dni + " es " + "H."); break; case 19: System.out.println("La letra del DNI " + dni + " es " + "L."); break; case 20: System.out.println("La letra del DNI " + dni + " es " + "C."); break; case 21: System.out.println("La letra del DNI " + dni + " es " + "K."); break; case 22: System.out.println("La letra del DNI " + dni + " es " + "E."); break; } } }
No hay comentarios:
Publicar un comentario