Hola Ogramar.
Como explico en la pregunta por allá por el 1990 -93 hice un curso de analista programador en basic (era entonces cuando el primer windows empezaba a instalarse en los pc) y solamente se trabajaba en consola y uno de los ejercicios a resolver era averiguar el algoritmo que se utilizaba para "ordenar" estas letras.
No se ordenaban, en base a unos cálculos se hallaba el numero del código ascii de la letra correspondiente a el nif y si era una de las letras que no estaba incluida (i,o,u,ñ)
se le suma uno para coger la siguiente.
Como digo en mi consulta de esto hace por lo menos venti tantos años (al poco de que se decidieran a crear la letra del nif ) y ya no recuerdo como se hace ( ya que por motivos personales tuve que dejarme la programación y la estoy retomando ahora).
Pero se que hay un algoritmo para implementar todo esto.
Lo que pasa que algún tiempo después se dieron cuenta que la letra del nif era algo que se tenia que utilizar a la hora de gestionar la facturación las empresas (entre otros documentos nominas, etc..) y no podía ser un secreto ya que esta letra era necesaria para cualquier tipo de gestión en el cual hiciera falta el nif.
De hecho hoy en día aun hay veces que para hacer algunas gestiones te preguntan solamente el numero del dni, sin preguntarte por la letra y después de introducir el numero del dni te preguntan por la letra para ver si coincide con lo que les sale en el ordenador (normalmente en los bancos si no te conocen).
Fue entonces cuando alguien decidió ( implementar el algoritmo mod23 ) ordenar las letras del 0 al 22 y utilizar el mod 23.
Pero ya te digo que existía un algoritmo para poder hacer esto y hallar la letra del código ascii correspondiente a la letra del nif y me gustaría si hay alguien que recuerde esto que me hiciera memoria.
Se usan veintitrés letras por ser éste un número primo.
Se utilizan 23 letras no por ser un numero primo sino porque las demás letras están descartadas .
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
A,B,C,D,E,F,G,H,i,J, K , L, M, N,ñ,o, P, Q, R, S, T, u, V, W, X, Y, Z.
En total son 27 letras del alfabeto y se descartan 4.
I por el 1, O por el 0, U por la V y la Ñ por que en muchos países que no son de habla hispana no se utiliza.
Un saludo.