[Turn on line numbering]arg num; var str, neg, methstr; str = ""; neg = ""; // Handle negatives: if (num < 0) { neg = "negative "; num = abs(num); } if (num >= 1000000) return "Out of range"; if (num >= 1000) { str = "M" * (num / 1000); num = num % 1000; if (num == 0) return str; } if (num >= 100) { str = str + (num / 100).roman_numeral_scheme("C", "D", "M"); num = num % 100; if (num == 0) return str; } if (num >= 10) { str = str + (num / 10).roman_numeral_scheme("X", "L", "C"); num = num % 10; if (num == 0) return str; } if (num > 0) str = str + num.roman_numeral_scheme("I", "V", "X"); else if (!str) str = ""; return neg + str;
// Created 27-Mar-1995 as a part of ColdCore, see: @help Credit