プログラミング
 Computer >> コンピューター >  >> プログラミング >> プログラミング

ローマ数字の数


ローマ数字は位取り記数ではありません。いくつかの数字は、ローマ数字で数字を形成するために一緒に配置されます。たとえば、75という数字は75 =50 + 10 + 10 + 5と表すことができるため、ローマ数字はLXXVです。

この問題では、1つの数値が10進形式で提供されます。私たちのタスクは、それをローマ数字の文字列に変換することです。

このように、さまざまな記号とその値があります。

I
IV
V
IX
X
XL
L
XC
C
CD
D
CM
M
MMMM
V ’
1
4
5
9
10
40
50
90
100
400
500
900
1000
4000
5000


この表を使用すると、特定の数字のローマ数字を簡単に見つけることができます。

入力と出力

Input:
Decimal number: 3569
Output:
The Roman equivalent of 3569 is: MMMDLXIX

アルゴリズム

decToRoman(nuList, num)

入力: 数値リストとその値、ローマ字に変換する数値。

出力: 指定された番号のローマ数字。

Begin
   if num ≠ 0, then
      max := get maximum numeral value, not greater than number
      display the nuList[max].symbol
      num := num – nuList[max].value
      decToRoman(nuList, num)
End

#include<iostream>
using namespace std;

struct numeral {
   string sym;
   int val;
};

int maxNume(numeral nu[], int num) {
   int index;
   for(int i = 0; i<15; i++)   //15 numerals in array
      if(nu[i].val<= num)
         index = i;
   //gretest value numeral index, not greater than number
   return index;
}

void decToRoman(numeral nu[], int num) {
   int max;
   if(num != 0) {
      max = maxNume(nu, num);
      cout << nu[max].sym;
      num -= nu[max].val;   //decrease number
      decToRoman(nu, num);   //recursively print numerals
   }
}

int main() {
   int number;
   numeral nume[15] = {{"I",1},{"IV",4},{"V",5},{"IX",9},
      {"X",10},{"XL",40},{"L",50},{"XC",90},
      {"C",100},{"CD",400},{"D",500},{"CM",900},
      {"M",1000},{"MMMM",4000},{"V'",5000}
   };
   cout << "Enter a decimal number: "; cin >> number;

   if(number >0 && number <= 5000) {   //checking input number
      cout<<"The Roman equivalent of " << number<<" is: ";
         decToRoman(nume, number);
   }else {
      cout << "Invalid Input";
   }
}

出力

Enter a decimal number: 3569
The Roman equivalent of 3569 is: MMMDLXIX

  1. JavaScript数値関数

    JavaScript Number()関数は、引数として渡されたオブジェクト値をそれぞれの数値に変換します。 以下は、JavaScript Number()関数のコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> &

  2. JavaScriptの番号パターン

    ユーザーにテキスト入力とボタンを提供するJavaScriptおよびHTMLプログラムを作成する必要があります。ユーザーが入力に任意の値(たとえば5)を入力してボタンをクリックすると、画面に次のパターンが印刷されます。 (n =5の場合) 01 01 02 01 02 03 01 02 03 04 01 02 03 04 05 例 このためのコードは-になります <html> <head> <title>JavaScript Number Patterns</title> <script type="text/javascrip