Sencillo programa para el calculo de la letra del NIF
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace DNI_5
{
public partial class Form1 : Form
{
int numero;
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
numero = Convert.ToInt32(dni.Text);
letra.Text = Convert.ToString(calcularLetra(numero));
//MessageBox.Show("El resultado es: " + calcularLetra(numero));
}
public static char
calcularLetra(int n)
{
string cadena = "TRWAGMYFPDXBNJZSQVHLCKE";
return (char)cadena[n % 23];
}
private void button2_Click(object sender, EventArgs e)
{
Application.Exit();
}
}
}
El número de identificación fiscal (NIF) español es un código único que identifica a todos los ciudadanos españoles a efectos fiscales. Partiendo del tradicional documento nacional de identidad, DNI, añade a éste una letra que actúa como elemento verificador.
La letra del NIF se obtiene a partir de un algoritmo conocido como módulo 23. El algoritmo consiste en aplicar la operación aritmética de módulo 23 al número del DNI. El módulo 23 es el número entero obtenido como resto de la división entera del número del DNI entre 23. El resultado es un número comprendido entre el 0 y el 22. En base a una tabla conocida se asigna una letra. La combinación del DNI con esa letra es el NIF.
TABLA DE ASIGNACIÓN
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
T | R | W | A | G | M | Y | F | P | D | X | B | N | J | Z | S | Q | V | H | L | C | K | E |
No se utilizan las letras: I, Ñ, O, U
La I y la O se descartan para evitar confusiones con otros caracteres, como 1, l o 0.
Se usan veintitrés letras por ser este un número primo.
Fuente: https://es.wikibooks.org/wiki/Algoritmo_para_obtener_la_letra_del_NIF
No hay comentarios:
Publicar un comentario
Nota: solo los miembros de este blog pueden publicar comentarios.