Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var rom_hlp = ['','I','II','III','IV','V','VI','VII','VIII','IX','X'];
- function convertToRoman(number) {
- if (number >= 400) {
- if (number >= 900) {
- if (number >= 1000) return "M" + convertToRoman(number - 1000);
- else return "CM" + convertToRoman(number - 900);
- } else {
- if (number >= 500) return "D" + convertToRoman(number - 500);
- else return "CD" + convertToRoman(number - 400);
- }
- } else {
- if (number >=90) {
- if (number >=100) return "C" + convertToRoman(number - 100);
- else return "XC" + convertToRoman(number - 90);
- } else {
- if (number <= 10) return rom_hlp[number];
- if (number >= 40) {
- if (number >=50) return "L" + convertToRoman(number - 50);
- else return "XL" + convertToRoman(number - 40);
- }
- return "X" + convertToRoman(number - 10);
- }
- }
- }
- var rom_hlp = ['','I','II','III','IV','V','VI','VII','VIII','IX','X'];
- function convertToRoman(number) {
- var r = "";
- while (number > 0 ) {
- if (number >= 400) {
- if (number >= 900) {
- if (number >= 1000) { r+= "M"; number -= 1000; continue; }
- else {r += "CM"; number -= 900; continue;}
- } else {
- if (number >= 500) {r += "D"; number -= 500;continue;}
- else { r += "CD" ; number -=400;continue;}
- }
- } else {
- if (number >=90) {
- if (number >=100) {r += "C" ; number -=100;continue;}
- else { r += "XC" ; number -=90;continue;}
- } else {
- if (number >= 40) {
- if (number >=50) {r += "L" ; number -=50;continue;}
- else {r += "XL" ; number -=40;continue;}
- }
- if (number >10) { r+= "X"; number -= 10; continue;};
- return r+rom_hlp[number];
- }
- }
- }
- return r;
- }
- function romanize (num) {
- if (!+num)
- return NaN;
- var digits = String(+num).split(""),
- key = ["","C","CC","CCC","CD","D","DC","DCC","DCCC","CM",
- "","X","XX","XXX","XL","L","LX","LXX","LXXX","XC",
- "","I","II","III","IV","V","VI","VII","VIII","IX"],
- roman = "",
- i = 3;
- while (i--)
- roman = (key[+digits.pop() + (i * 10)] || "") + roman;
- return Array(+digits.join("") + 1).join("M") + roman;
- }
Add Comment
Please, Sign In to add comment