x2311

Untitled

Dec 25th, 2021
139
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.13 KB | None | 0 0
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. int main() {
  6.     int theNumbers[]{1, 5, 10, 50, 100, 500, 1000};
  7.     string theChar = "IVXLCDM";
  8.  
  9.     string s = "LIX";
  10.     int sum = 0;
  11.     for (int i = 0, previousСhar = 0, nextCrar = 0; i < s.length(); ++i) {
  12.         for (int j = 0; j < theChar.length(); ++j) {
  13.             if (s[i] == theChar[j]) {
  14.                 nextCrar = j;
  15.                 j = theChar.length() + 2;
  16.             }
  17.             if (j + 1 == theChar.length()) {
  18.                 cout << "ERROR";
  19.                 return 0;
  20.             }
  21.         }
  22.         if (i == 0) {
  23.             previousСhar = nextCrar;
  24.             sum += theNumbers[nextCrar];
  25.         } else {
  26.             if (theNumbers[nextCrar] > theNumbers[previousСhar]) {
  27.                 sum = sum + theNumbers[nextCrar] - theNumbers[previousСhar];
  28.                 sum = sum - theNumbers[previousСhar];
  29.                 previousСhar = nextCrar;
  30.             } else {
  31.                 previousСhar = nextCrar;
  32.                 sum += theNumbers[nextCrar];
  33.             }
  34.         }
  35.         sum = abs(sum);
  36.     }
  37.     cout << endl << "Sum: " << sum;
  38.  
  39. }
Add Comment
Please, Sign In to add comment