Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- void int2roman(int n);
- int main()
- {
- int input;
- cout << "Roman Numeral Converter\n\n"
- << "Enter a number: ";
- cin >> input;
- int2roman(input);
- return 0;
- }
- void int2roman(int n)
- {
- if (n >= 4000)
- return;
- int thousands = n / 1000; // get the thousands digit
- n = n % 1000;
- switch(thousands)
- {
- case 3:
- cout << "MMM";
- break;
- case 2:
- cout << "MM";
- break;
- case 1:
- cout << "M";
- break;
- }
- int hundreds = n / 100; // get hundreds digit
- n = n % 100;
- switch(hundreds)
- {
- case 9:
- cout << "CM";
- break;
- case 8:
- cout << "DCCC";
- break;
- case 7:
- cout << "DCC";
- break;
- case 6:
- cout << "DC";
- break;
- case 5:
- cout << "D";
- break;
- case 4:
- cout << "CD";
- break;
- case 3:
- cout << "CCC";
- break;
- case 2:
- cout << "CC";
- break;
- case 1:
- cout << "C";
- break;
- }
- int tens = n / 10; // get ones digit
- switch(tens)
- {
- case 9:
- cout << "XC";
- break;
- case 8:
- cout << "LXXX";
- break;
- case 7:
- cout << "LXX";
- break;
- case 6:
- cout << "LX";
- break;
- case 5:
- cout << "L";
- break;
- case 4:
- cout << "XL";
- break;
- case 3:
- cout << "XXX";
- break;
- case 2:
- cout << "XX";
- break;
- case 1:
- cout << "X";
- break;
- }
- int ones = n % 10; // get ones digit
- switch(ones)
- {
- case 9:
- cout << "IX";
- break;
- case 8:
- cout << "VIII";
- break;
- case 7:
- cout << "VII";
- break;
- case 6:
- cout << "VI";
- break;
- case 5:
- cout << "V";
- break;
- case 4:
- cout << "IV";
- break;
- case 3:
- cout << "III";
- break;
- case 2:
- cout << "II";
- break;
- case 1:
- cout << "I";
- break;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement