Advertisement
Guest User

Untitled

a guest
Mar 30th, 2020
97
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.73 KB | None | 0 0
  1.  
  2.  
  3. #include <iostream>
  4. #include <string>
  5. #include <iomanip>
  6.  
  7. using namespace std;
  8.  
  9.  
  10. int main(int argc, char** argv)
  11. {
  12. int integer;
  13. int piece;
  14. string roman;
  15. cout << "Arabic to Roman numeral conversion." << endl;
  16. cout << "Input the integer to convert." << endl;
  17. cin >> integer;
  18. if (integer < 1000 || integer > 3000)
  19. {
  20. cout << integer << " is Out of Range!";
  21. }
  22. else
  23. {
  24. if(integer >= 1000)
  25. {
  26. piece = (integer / 1000);
  27. for (int i = 0; i < piece; i++)
  28. {
  29. roman += 'M';
  30. }
  31. }
  32. integer %= 1000;
  33. }
  34. if (integer >= 100)
  35. {
  36. piece = (integer / 100);
  37. }
  38. if (piece == 9)
  39. {
  40. roman += 'CM';
  41. }
  42. else if (piece >= 5)
  43. {
  44. roman += 'D';
  45. for (int i = 0; i < piece - 5; i++)
  46. {
  47. roman += 'C';
  48. }
  49. }
  50. else if (piece == 4)
  51. {
  52. roman += 'CD';
  53. }
  54. else if (piece >= 1)
  55. {
  56. for (int i = 0; i < piece - 5; i++)
  57. {
  58. roman += "C";
  59. }
  60. integer %= 100;
  61. }
  62. if (integer >= 10)
  63. {
  64. piece = (integer / 10);
  65. }
  66. if (piece == 9)
  67. {
  68. roman += 'XC';
  69. }
  70. else if (piece >= 5)
  71. {
  72. roman += 'L';
  73. for (int i = 0; i < piece - 5; i++)
  74. {
  75. roman += 'X';
  76. }
  77. }
  78. else if (piece == 4)
  79. {
  80. roman += 'XL';
  81. }
  82. else if (piece >= 1)
  83. {
  84. for (int i = 0; i < piece; i++)
  85. {
  86. roman += 'X';
  87. }
  88. integer %= 10;
  89. }
  90. if (integer >= 1)
  91. {
  92. piece = integer;
  93. if (piece == 9)
  94. {
  95. roman += 'IX';
  96. }
  97. else if (piece >= 5)
  98. {
  99. roman += 'V';
  100. for (int i = 0; i < piece - 5; i++)
  101. {
  102. roman += 'I';
  103. }
  104. }
  105. else if (piece == 4)
  106. {
  107. roman += 'IV';
  108. }
  109.  
  110. else if (piece >= 1)
  111. {
  112. for (int i = 0; i < piece; i++)
  113. {
  114. roman += 'I';
  115. }
  116. }
  117. }
  118.  
  119. cout << integer << " is equal to " << roman;
  120. return 0;
  121. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement