এই টিউটোরিয়ালে, আমরা 1 থেকে 3999 এর মধ্যে থাকা রোমান সংখ্যাকে দশমিকে রূপান্তর করার একটি প্রোগ্রাম নিয়ে আলোচনা করব।
এর জন্য আমাদের একটি এলোমেলো রোমান সংখ্যা প্রদান করা হবে। আমাদের কাজ হল প্রদত্ত রোমান সংখ্যাটিকে তার দশমিক সমতুল্যে রূপান্তর করা।
উদাহরণ
#include<bits/stdc++.h> using namespace std; //calculating the decimal value int value(char r){ if (r == 'I') return 1; if (r == 'V') return 5; if (r == 'X') return 10; if (r == 'L') return 50; if (r == 'C') return 100; if (r == 'D') return 500; if (r == 'M') return 1000; return -1; } //calculating decimal equivalent of given numeral int convert_decimal(string &str){ int res = 0; for (int i=0; i<str.length(); i++){ //getting value of digit int s1 = value(str[i]); if (i+1 < str.length()){ int s2 = value(str[i+1]); if (s1 >= s2){ res = res + s1; } else{ res = res + s2 - s1; i++; } } else{ res = res + s1; } } return res; } int main(){ string str ="MCMIV"; cout << "Integer form:" << convert_decimal(str) << endl; return 0; }
আউটপুট
Integer form:1904