ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Calcular letra DNI


Enviado por   •  21 de Enero de 2017  •  Trabajo  •  1.269 Palabras (6 Páginas)  •  275 Visitas

Página 1 de 6

/**----------------------------------------------------------------

* Clase DNI

----------------------------------------------------------------*/

public class DNI {

// Atributos estáticos

// Cadena con las letras posibles del DNI ordenados para el cálculo de DNI

private static final String LETRAS_DNI= "TRWAGMYFPDXBNJZSQVHLCKE";

// Atributos de objeto

private int numDNI;

// Métodos

public String obtenerNIF () {

// Variables locales

String cadenaNIF; // NIF con letra para devolver

char letraNIF; // Letra del número de NIF calculado

// Cálculo de la letra del NIF

letraNIF= calcularLetraNIF (numDNI);

// Construcción de la cadena del DNI: número + letra

cadenaNIF= Integer.toString(numDNI) + String.valueOf(letraNIF);

// Devolución del resultado

return cadenaNIF;

}

public int obtenerDNI () {

return numDNI;

}

public void establecer (String nif) throws Exception {

if (DNI.validarNIF (nif)) { // Valor válido: lo almacenamos

this.numDNI= DNI.extraerNumeroNIF(nif);

}

else { // Valor inválido: lanzamos una excepción

throw new Exception ("NIF inválido: " + nif);

}

}

public void establecer (int dni) throws Exception {

// Comprobación de rangos

if (dni>999999 && dni<99999999) {

this.numDNI= dni; // Valor válido: lo almacenamos

}

else { // Valor inválido: lanzamos una excepción

throw new Exception ("DNI inválido: " + String.valueOf(dni));

}

}

private static char calcularLetraNIF (int dni) {

char letra;

// Cálculo de la letra NIF

letra= LETRAS_DNI.charAt(dni % 23);

// Devolución de la letra NIF

return letra;

}

private static char extraerLetraNIF (String nif) {

char letra= nif.charAt(nif.length()-1);

return letra;

}

private static int extraerNumeroNIF (String nif) {

...

Descargar como (para miembros actualizados) txt (4 Kb) pdf (46 Kb) docx (12 Kb)
Leer 5 páginas más »
Disponible sólo en Clubensayos.com