wikipediaによると、ローマ数字システムが表すことができる最大数は次のように表されます:(以下の回答ははるかに大きな数を表しています)
MMMCMXCIX
次のように表現できないのはなぜですか?
MMMIM
コメント
- これはラテン言語
- @curiousdannii IMHOにとって良い質問のようです。技術的には、ローマ数字は言語です。
- @Sajuuk多分"言語"のコンピュータサイエンスの定義にありますが、間違いなく言語学の範囲内の言語。
- @Sajuukいいえ、'は、言語学者が研究する言語という意味での言語ではありません。'はコードのみです。
- jknappenをエコーすると、ラテン言語でこの種の質問を歓迎すると思います。SE
回答
パートタイムのコンピューター科学者として、私はローマ数字システムを分析するさまざまな方法を考え出し、特別な場合なしに、ルールを可能な限り一般的な方法で定式化できるようにしました。グリフごと。今のところ、私が最も満足しているのは、7つのグリフを、それぞれに乗数を持つ4つのセットとして分析するものです。これは、アラビア数字システムの各列に場所と値の乗数があるのと同じです。
これらのセットはI V X
です。 X L C
; C D M
; M
(ローマ人は私たちに完全に対称的なセットを残しませんでした)。同じセットの2番目または3番目のから、各セットの最初のグリフのみを減算できます。これにより、IM
が除外されます。
この分析の動作を確認するには、 この簡単な配布資料 。練習問題と、回答を確認するためのオンラインツールが含まれています。 Stack Exchangeを永続的に利用できるようにするために、最初のページのスクリーンショットをここにコピーします:
コメント
- すばらしい配布資料、私はしませんでした'同じ記号をいくつ連続して配置できるかについてのルールは見つかりません。3つですか?
- さらに、この配布資料のソース/参照を提供できますか?この文法は何らかの点で信頼できますか?
- @Sajuuk出典は、ローマ数字に関するWikipediaの記事です。いくつかのバリエーションがリストされていますが、最も広く受け入れられているものについて説明しました。興味深いことに、約8年ぶりに記事を読み直したところ、場所の値に関する同様の分析。配布資料にソースに関するメモを追加しました。
- 同じ記号がいくつあるかについては、
x1
シンボル。制限は通常3ですが、sの一般的なバリアントです。 ystemは4を許可します(それはあなたが書くことができる数の上限を大幅に増やすので、私は演習の1つでそれを述べました!配布物にリンクされているチェッカーツールを使用すると、同じ記号を4つ書くこともできます。) - 次に、' s この碑文、トレリスの暖炉の上。はい、それは最後の数字' 3 'です。
回答
これはローマ数字の文法によるものです(自然言語の文法と同じではありませんが、それでも文法です)。
I
はすべての文字と結合するわけではありません。I
はV
またはX
は-1
を意味します(X
が左側に結合されているようにL
またはC
は-10
を意味しますが、は機能しません)。
したがって、MMMIM
の問題は、IM
が無効であり999
を意味することはできません。M
から何かを減算するには、C
を使用できます。
p>
コメント
- 形式文法のソースまたはリファレンスを提供できますか?
- ここに'があります。 compilers.iecc.com/comparch/article/07-03-118 高次のアプローチをお勧めしますが。
回答
あまり多くのスロットをスキップできないためか、49はILではなくXLIXであり、 99はXCIXであり、ICではありません。とにかく、あなたはそのMMMCMXCIX(3999)よりはるかに大きな数を書くことができます。 vinculum または overline と呼ばれる水平線をローマ数字の上に置くと、1,000を掛けます。したがって、 overline のあるMは1,000,000、つまり100万です。 overline を使用すると、書き込むことができる最大数は3,999,999です(画像を参照)。
overline は中世の機能であることに注意してください。
コメント
- ウィキペディアで"という単語が使用されました。別のシステムは'括線' "、これは元のローマ数字システムのある種の拡張ですか?中世の特徴とは、これが中世以来ヨーロッパでのみ使用されているという意味ですか?
- @ Sajuuk-はい、中世以来、その通りです。