ROMAN

アラビア数字をローマ数字に変換します。

構文
  1. UString = ROMAN( num )
引数
num
アラビア数字
戻値
ローマ数字に変換したアラビア数字

プログラム

////////////////////////////////////////////////// // 【引数】 // num : アラビア数字 // 【戻値】 // ローマ数字に変換したアラビア数字 ////////////////////////////////////////////////// FUNCTION ROMAN(num) DIM arr[][1] = 1, "I", + _ 2, "II", + _ 3, "III", + _ 4, "IV", + _ 5, "V", + _ 6, "VI", + _ 7, "VII", + _ 8, "VIII", + _ 9, "IX", + _ 10, "X", + _ 40, "XL", + _ 50, "L", + _ 90, "XC", + _ 100, "C", + _ 400, "CD", + _ 500, "D", + _ 900, "CM", + _ 1000, "M" DIM res = "" n = UBound(arr) REPEAT SELECT TRUE CASE num / arr[n][0] >= 1 res = res + arr[n][1] num = num - arr[n][0] DEFAULT n = n - 1 SELEND UNTIL num = 0 RESULT = res FEND ////////////////////////////////////////////////// // 【引数】 // 配列 : 上限値を求める配列 // 【戻値】 // 配列の上限値 ////////////////////////////////////////////////// FUNCTION UBound(array[]) RESULT = RESIZE(array) FEND

アラビア数字・ローマ数字対応表

アラビア数字 ローマ数字
1 I
2 II
3 III
4 IV
5 V
6 VI
7 VII
8 VIII
9 IX
10 X
40 XL
50 L
90 XC
100 C
400 CD
500 D
900 CM
1000 M

この記事は役に立ちましたか?
役に立った 役に立たなかった