Computer >> Máy Tính >  >> Lập trình >> C ++

Chuyển đổi số thập phân nằm trong khoảng từ 1 đến 3999 thành chữ số La mã trong C ++

Trong hướng dẫn này, chúng ta sẽ thảo luận về một chương trình chuyển đổi số thập phân nằm trong khoảng từ 1 đến 3999 sang chữ số La Mã.

Đối với điều này, chúng tôi sẽ được cung cấp một số nguyên ngẫu nhiên. Nhiệm vụ của chúng ta là chuyển một số đã cho thành số la mã tương đương.

Ví dụ

#include <bits/stdc++.h>
using namespace std;
//converting decimal to roman numeral
int printRoman(int number){
   int num[] = {1,4,5,9,10,40,50,90,100,400,500,900,1000};
   string sym[] =
   {"I","IV","V","IX","X","XL","L","XC","C","CD","D","CM","M"};
   int i=12;
   while(number>0){
      int div = number/num[i];
      number = number%num[i];
      while(div--){
         cout<<sym[i];
      }
      i--;
   }
}
int main(){
   int number = 3949;
   printRoman(number);
   return 0;
}

Đầu ra

MMMCMXLIX