1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| // FONCTION : convertit le nombre courant (sa valeur entière arrondie) en chiffres romains ( valeur minimum : 1 )
// RETOUR : chaine représentant le nombre courant
Number.prototype.enRomains = function() {
var tab = [ ["", "I", "II", "III", "IV", "V", "VI", "VII", "VIII", "IX"],
["", "X", "XX", "XXX", "XL", "L", "LX", "LXX", "LXXX", "XC"],
["", "C", "CC", "CCC", "CD", "D", "DC", "DCC", "DCCC", "CM"],// "?" >>> 5000 existe ? (à vérifier)
["", "M", "MM", "MMM", "M?", "?", "?M", "?MM", "?MMM", "M!"],// "!" >>> 10000 existe ? (à vérifier)
];
if (this < 1 || this > 9999)
return false;
var chaine = this.toFixed(), resultat = "", j = 0;
for (var i = chaine.length - 1; i >= 0; --i)
resultat = tab[j++][parseInt(chaine.substr(i, 1), 10)] + resultat;
return resultat;
} |
Partager