Advertisement
Guest User

Untitled

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