// Convertir un entier décimal dans une base donnée (2 a 99) // iNum [in] : Entier sans signe à convertir (0 à 18446744073709551615) // iBase [in] : Base dans laquelle convertir // Pour les bases <= 36 le résultat est renvoyé sous forme chiffres+lettres sans séparateur // Pour les autres bases le résultat est renvoyé dans une chaine ou les entités sont séparées par des " " PROCEDURE ConversionBase(iNum,iBase) sRes est une chaîne = "" iCh est un entier sCh est une chaîne iVal est un entier sans signe sur 8 = iNum SI iNum<0 ALORS RENVOYER "Erreur Valeur" SI iBase<2 _OU_ iBase>99 ALORS RENVOYER "Erreur Base" SI iVal=0 ALORS RENVOYER "0" TANTQUE iVal>0 iCh=modulo(iVal,iBase) SI iBase<=36 ALORS SI iCh<=9 ALORS sCh=Caract(48+iCh) SINON sCh=Caract(55+iCh) SINON sCh=" "+NumériqueVersChaîne(iCh,"02D") FIN sRes=sCh+sRes iVal=PartieEntière(iVal/iBase) FIN RENVOYER SansEspace(sRes)