Une source qui manquait sur ce site.
Cette fonction sert à vérifier qu'un RIB est valide
Elle accepte 3 ou 4 arguments :
1/ Si 3 arguments sont passés (banque 5 chiffres, guichet 5 chiffres, n° de compte 11 caractères alpha), la fonction renvoie la clé RIB
2/ Si 4 arguments sont passés (les trois premiers plus la clé RIB, 2 chiffres), la fonction renvoie un booléen : true si le RIB est Ok, false autrement.
La fonction commence par convertir toutes les lettres du numéro de compte (cas des clients Banque de France, la poste, etc...) en chiffres selon la table de correspondance donnée par tab et tab1. C'est ce que fait la boucle while.
L' algorithme utilisé pour calculer la clé RIB est assez tordu, aussi ne le commenterais-je pas, le code est assez simple. (Pour mémoire, bqe%97 calcule le reste de la division de bqe par 97.)
L'algorithme est utilisé par toutes les banques de france et de Navarre. Pour les comptes étrangers, je ne sait pas (Si vous avez des infos à ce sujet, je suis preneur !)