Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- string digit(int n, const string& symbols)
- {
- string one = string(1, symbols[0]);
- string two = string(1, symbols[1]);
- string three = string(1, symbols[2]);
- switch (n)
- {
- case 1: return one; break;
- case 2: return one + one; break;
- case 3: return one + one + one; break;
- case 4: return one + two; break;
- case 5: return two; break;
- case 6: return two + one; break;
- case 7: return two + one + one; break;
- case 8: return two + one + one + one; break;
- case 9: return one + three; break;
- default: return "";
- }
- }
- string toRoman(int n)
- {
- string roman;
- if (n <= 0 || n >= 4000)
- {
- return "OUT OF RANGE";
- }
- int digit = n / 1000;
- if (digit == 3)
- roman = "MMM";
- else if (digit == 2)
- roman = "MM";
- else if (digit == 1)
- roman = "M";
- n = n % 1000;
- digit = n / 100;
- roman += hundreds(digit);
- n = n % 100;
- digit = n / 10;
- roman += tens(digit);
- digit = n % 10;
- roman += ones(digit);
- return roman;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement