Autor Tema: Cómo calcular el número de documento nacional de identidad español Java CU00904C  (Leído 2268 veces)

PatAs

  • Sin experiencia
  • *
  • Mensajes: 19
  • ¿Libre...? - Solo cuando pienso y aprendo!!
    • Ver Perfil
Buen día. Les presento código del ejercicio propuesto para lección de referencia CU00904C del tutorial de programación avanzada en Java.

Enunciado:
"En España cada persona está identificada con un Documento Nacional de Identidad (DNI) en el que figura un número y una letra, por ejemplo 56999545W. La letra que sigue al número se calcula siguiendo la metodología que vamos a indicar. Crea un programaque calcule la letra de un DNI a partir del número de DNI que introduzca el usuario. Es decir, se debe pedir el DNI sin la letra por teclado y el programa nos devolverá el DNI completo (con la letra). Para calcular la letra, se debe tomar el resto de dividir nuestro número de DNI entre 23. El resultado debe estar por tanto entre 0 y 22."
Cordial saludo.
Código: [Seleccionar]
package CU00904C;
import CU00903C.EntradaPorTeclado;

/**
 * Write a description of class CalcularLetraDNI here.
 *
 * @author (Arnaldo R. Martinez)
 * @version (11-Ago-2017) - Ejercicio propuesto por aprenderaprogramar.com
 */
public class CalcularLetraDNI {
public static void main (String arg[]) {
int DNI = 0;
int restoDNI = 0;
System.out.println("Comienza el programa");
System.out.println("Por favor ingrese el número de DNI (solo el número) ");
EntradaPorTeclado dni = new EntradaPorTeclado();
DNI = Integer.valueOf(dni.getEntrada());
//Se calcula el resto de dividir el número de DNI por 23
restoDNI = DNI%23;
System.out.println("");
System.out.println("El número de DNI es: " +DNI+obtenerLetra(restoDNI));
}
public static char obtenerLetra(int numeroDNI) {
char[] letrasDNI = {'T','R','W','A','G','M','Y','F','P','D','X','B','N','J','Z','S','Q','V','H','L','C','K','E'};
return letrasDNI[numeroDNI];
}
}
Se adjunta código del auxiliar 'EntradaPorTeclado'
Código: [Seleccionar]
package CU00903C;

import java.util.Scanner;
/**
 * Para obtener entradas por teclado
 *
 * @author (Arnaldo Martinez)
 * @version (01_2016)
 */
public class EntradaPorTeclado{
   
    private String entradaTcl; //Campo de la clase
    //Constructor
    public EntradaPorTeclado(){
        entradaTcl= "";
        pedirEntrada(); //Llamado a un mètodo interno
    }
    //Mètodos de la clase
    public void pedirEntrada(){
        Scanner eEsc= new Scanner(System.in);
        entradaTcl= eEsc.nextLine();
    }
   
    public String getEntrada(){
        return entradaTcl;
    }
}
« Última modificación: 16 de Septiembre 2017, 19:41 por Ogramar »

Ogramar

  • Moderador Global
  • Experto
  • *******
  • Mensajes: 2660
    • Ver Perfil
Buenas PatAs. Ejercicio bien resuelto

Salu2
« Última modificación: 10 de Diciembre 2017, 14:39 por Ogramar »

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".