Calcular la letra del DNI

¿Cómo se asigna la letra de nuestro Documento Nacional de Identidad? Seguro que muchos lo sabéis, pero estoy convencido de que también hay mucha gente que no lo tiene tan claro. Lo que sí es seguro es que sería demasiado ingenuo pensar que se hace al azar, ¿verdad? Lo normal sería suponer que se hace mediante algún método. Pues sí, evidentemente esta asignación se realiza mediante un método, que (aunque es muy conocido) vamos a explicar en este post.

La cuestión va de aritmética modular, al igual que ocurría con el ISBN y con los números de nuestras tarjetas de crédito. Y el método es bien sencillo:

Tomamos el número de 8 cifras de nuestro DNI, lo dividimos entre 23 y nos quedamos con el resto de dicha división, que será seguro un número entre 0 y 22. Y ahora escogemos la letra de la siguiente tabla, que asigna a cada uno de los números entre 0 y 22 una letra de nuestro abecedario:

RESTO 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
LETRA T R W A G M Y F P D X B N J Z S Q V H L C K E



Sencillo, ¿verdad?

Seguro que más de uno estará pensando ahora que es un engorro lo de dividir a mano un número de 8 cifras entre 23, y en realidad no le falta razón. Pero bueno, siempre tenemos la calculadora para estos cálculos, ¿no? Un momento…¡la calculadora no nos muestra el resto! (algunas sí, pero en general no). ¿Cómo lo calculamos entonces? Seguro que muchos no han caído en cómo hacerlo, aunque es bastante fácil:

Dividimos el número de 8 cifras de nuestro DNI, que llamaremos A, entre 23 con la calculadora. Si nos sale un número entero positivo (es decir, si el resultado no tiene decimales) entonces el resto es cero, y por tanto ya tenemos letra, la T. Si obtenemos un resultado con decimales, nos quedamos con el número sin decimales y lo multiplicamos por 23, obteniendo así un número ligeramente más pequeño que nuestro número de 8 cifras inicial, que llamaremos B. Ahora simplemente realizamos la operación A-B y ya tenemos el resto buscado.

Por ejemplo, vamos a aplicar este método a calcular la letra que le correspondería al número de DNI A=74568099:

  • Dividimos entre 23: 74568099/23=3242091’2608…
  • Nos quedamos con el número sin decimales: 3242091
  • Multiplicamos por 23: B=3242091·23=74568093
  • Le restamos el resultado al número inicial: A-B=74568099-74568093=6
  • Como el resto obtenido es 6, al número inicial le corresponde la letra Y.

No puede ser más fácil.

Por cierto, como muchos de vosotros sabréis, y otros muchos habréis intuido, este método sirve tanto para detectar si un DNI es erróneo (le calculamos la letra y vemos si coincide con la que trae) y para calcular un dígito del número del DNI que hayamos perdido (miramos a qué resto corresponde la letra y vamos probando número a número en el lugar donde debería estar el perdido hasta que encontremos un número de 8 cifras que cuadre con dicha letra).

Y para finalizar os recomiendo este post de Enchufa2 en el que podéis ver tanto este cálculo como los relacionados con el resto de números que aparecen en nuestro DNI. Por cierto, de ahí es de donde he copiado vilmente la tabla que aparece en mi post. Espero que Iñaki y Almudena no se me enfaden por ello.

Y hablando de la tabla, ¿alguien sabe si la asignación de letras a cada uno de los posibles restos responde a algún criterio? ¿Se eligió esa asignación por alguna razón en concreto o es aleatoria? A ver si alguien nos ilumina.


Hace unos días le cité a Mamen el método que se utiliza para calcular la letra de nuestro DNI y me comentó que no lo conocía. Este post está dedicado especialmente a ella y a todos los que hoy han aprendido este método. Y ya de paso es mi tercera aportación a la Edición 3.14 del Carnaval de Matemáticas, que organizan en Hablando de Ciencia.


Foto tomada de aquí.

Share

14 comentarios

  1. Trackback | 21 mar, 2012

    Calcular la letra del DNI

  2. Trackback | 21 mar, 2012

    Bitacoras.com

  3. Javier | 21 de marzo de 2012 | 15:32

    Vótalo Thumb up 0

    Os enlazo un post que hice también sobre eso, porque quizá os interese un enlace donde ponía un enlace donde venía código en distintos lenguajes de programación para insertarlo en tus programas y que lo calcule. Saludos

  4. Javier | 21 de marzo de 2012 | 15:33

    Vótalo Thumb up 0

    Ahora sí que os pongo el post, perdón http://lacienciaparatodos.wordpress.com/2009/01/26/experimento-calcula-tu-letra-del-nif/

  5. Fernando | 21 de marzo de 2012 | 23:14

    Vótalo Thumb up 0

    Bueno, hay un método, que es lo mismo, pero con números más pequeños.
    Haces la división A/23. A lo que te salga, le restas la parte entera (es decir, te quedas con la parte decimal). Ese decimal lo multiplicas por 23. Y ya está. Luego a buscar la letra.

  6. Iñaki | 22 de marzo de 2012 | 00:57

    Vótalo Thumb up 0

    ¡Qué me va a importar!… Has resucitado un viejo post. ;-) También hice una miniaplicación que rellena automáticamente los campos: http://www.enchufa2.es/archives/mini-aplicacion-generadora-del-dni-electronico.html

  7. cronos2 | 22 de marzo de 2012 | 01:49

    Vótalo Thumb up 0

    Para simplificar los cálculos: http://jsfiddle.net/_cronos2/MDkwn/
    Además de calcular la letra si le das los dígitos puede calcular uno de ellos si le das 7 y la letra. Vamos, que calcula cualquiera de los caracteres dados los otros 8, siempre que la combinación sea posible claro.
    Genial el post, como siempre.
    Saludos (:

  8. Trackback | 23 mar, 2012

    Calcular la letra del DNI « almacen13

  9. Trackback | 26 mar, 2012

    Carnaval de Matemáticas 3.14: Hablando de Ciencia en su propio idioma | Hablando de Ciencia

  10. José | 26 de marzo de 2012 | 17:15

    Vótalo Thumb up 0

    Os dejo un enlace a mi blog, donde he colgado una aplcación creada por mí en Excel para calcular la letra del DNI. Aunque, viendo lo anterior, comento que lo pongo porque me hace ilusión jaja.
    Muy buen post. Como todos :)

  11. Quarkbite | 30 de abril de 2012 | 10:34

    Vótalo Thumb up 1

    Bueno, tambien se puede hacer asi:

    A=74568099:

    Dividimos entre 23: 74568099/23=3242091’2608…
    Nos quedamos con los decimales= 0.26084
    Multiplicamos por 23: 0.26084*23=5.99932… que es practicamente 6.

  12. victoria | 5 de junio de 2014 | 10:58

    Vótalo Thumb up 0

    está muy bien la información que ofrece esta página, a mi me ayudo mucho también esta otra <a href="http://www.letradni.com.es/letra dni

  13. Lucia | 14 de octubre de 2014 | 15:43

    Vótalo Thumb up 0

    Buenas. Me enteré de cómo se calcula la letra del DNI por el libro de matemáticas de mi sobrino, que tiene 10 años. El caso es que uno de los ejercicios dice así: “Escribe dos números del DNI que tengan la misma letra. ¿Cómo lo has hecho?” No lo han hecho en clase, así que no sé cómo se resuelve y me he quedado con la duda. ¿Me ayudáis?
    Gracias.

  14. gaussianos | 14 de octubre de 2014 | 16:33

    Vótalo Thumb up 0

    Lucia, como puedes ver en el post la letra viene determinada por el resto que queda al dividir el número entre 23. Es decir, si dos números distintos dejan el mismo resto al dividirlos entre 23 entonces los dos tendrán asociada la misma letra.

    Por tanto, para tener dos números que tengan asociada una misma letra simplemente tienes que escribir un número de 8 cifras y después sumarle un múltiplo de 23 a ese número. Así conseguirás dos números que compartirán letra :).

Escribe un comentario

Puedes utilizar código LaTeX para insertar fórmulas en los comentarios. Sólo tienes que escribir
[latex]código-latex-que-quieras-insertar[/latex]
o
$latex código-latex-que-quieras-insertar$.

Si tienes alguna duda sobre cómo escribir algún símbolo puede ayudarte la Wikipedia. Utiliza la Vista Previa antes de publicar tu comentario para asegurarte de que las fórmulas están correctamente escritas.