1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
| //
// Représentation d'une valeur numérique entière dans une base quelconque,
// retourne une chaîne
//
FONCTION ReprésentationBaseN(nValeur est un entier sur 8 octets, nBase est un entier, nTailleMin est un entier=0, sCar est une chaîne="0") //chaîne
sReprésentation est une chaîne = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ" // max base 36
sConv est une chaîne
nReste est un entier
nNombre est un numérique = nValeur
sRésultat est une chaîne
SI nBase = 2 A Taille(sReprésentation) ALORS
BOUCLE
nReste = nNombre modulo nBase // calcul du chiffre de droite
sRésultat = sReprésentation[[nReste+1]] + sResultat // trouve la représentation du chiffre et la concatène
nNombre = (nNombre - nReste) / nBase // calcul du nombre qu'il reste à représenter à gauche
A FAIRE TANTQUE nNombre>0
SI Taille(sRésultat) < nTailleMin ALORS // Si l'utilisateur a demandé à formater le résultat sur un minimum de caractères
sRésultat = Droite(Répète(sCar,nTailleMin)+sResultat, nTailleMin) // Compléter à gauche avec un ou plusieurs caractères de remplissage
FIN
RENVOYER sRésultat
SINON
RENVOYER = ""
FIN |
Partager