数学

ローマ数字変換 — 数値とローマ数字を相互変換

数値をローマ数字に、ローマ数字を数値に相互変換します。

最終更新 · アルゴリズム・定数・初期入力を確認(JSON)

数値を入力

結果 MMXXVI
計算結果

この計算機について

ローマ数字は 7 つの記号を使い、基本は足し算ですが、小さい記号が大きい記号の前に来るときだけ引き算になります。たとえば 4 は IIII ではなく IV、9 は IX と書きます。標準的な表記で表せる最大の値は 3,999 です。

計算例

下記の既定値を用いた計算結果

数字またはローマ数字 2026 · 方向 数字 → ローマ数字 結果 MMXXVI · 小数値 2,026 · 使用した記号 6

一般的な参考資料

免責事項

本計算ツールは一般的な数学的結果を提供します。学習・計画・概算に適しています。採点対象の課題、公表する数値、金銭的な約束に用いる場合は、必ず別途検証してください。

運営・保守: CalcDelta

実装の出典

この記録は本ページの実装を示し、独立した検証を意味しません。外部資料は明示された式や定義のみを裏付けます。推定や独自ルールにはそれぞれの前提があります。

アルゴリズム・定数・初期入力を確認(JSON)

式と変数

n₀ = n; v_j = max{v ∈ V ∶ v ≤ n_{j−1}}; n_j = n_{j−1} − v_j (j = 1,…,m); n_m = 0; R = s₁s₂⋯s_m; N = Σ_{k=1}^{ℓ} q_k v_k; q_k = {−1, v_k < v_{k+1}; 1, v_k ≥ v_{k+1}}; v_{ℓ+1} = 0

n
1〜3999の整数
V
表の値の集合 {1,4,5,9,10,40,50,90,100,400,500,900,1000}
j
符号化ステップ、1 ≤ j ≤ m
v_j
n_{j−1} 以下の V の最大値
s_j
v_j に対応する表の記号(I, IV, V, …, M)
n_j
ステップ j 後の残り、n_j = n_{j−1} − v_j
m
R の記号数;n_m = 0
R
ローマ数字:s₁s₂⋯s_m の連結
k
入力数字内の位置、1 ≤ k ≤ ℓ
ℓ
入力記号数
v_k
k番目の入力記号 I,V,X,L,C,D,M の値
q_k
直後が大きければ −1、それ以外は +1
v_{ℓ+1}
送り値 0。これにより最後の記号は q_ℓ = 1
N
復号された数

I〜MMMCMXCIX(1〜3999)の標準表記のみ。IIII や IC は拒否します。

この電卓を埋め込む

iframe コードをコピーしてサイトに置けます。アカウント不要。表示中の入力値が同期されます。

よくある質問

どのローマ数字を受け付けますか?

I から MMMCMXCIX(1〜3999)までの標準的なローマ数字を受け付けます。IIII や IC などの非標準表記、範囲外の数値はエラーになります。