ما هو محول التاريخ إلى الأرقام الرومانية؟
تحوّل هذه الأداة أي تاريخ ميلادي عادي إلى سلسلة من الأرقام الرومانية مثل XII_XXV_MMXXIV، كما يمكنها عكس العملية لتحويل الأرقام الرومانية إلى أرقام عادية. تُستخدم على نطاق واسع في الوشم، والمجوهرات المنقوشة، وخواتم الزواج، وهدايا الذكرى السنوية، والنقوش التذكارية، حيث تمنح التواريخ المكتوبة بالأرقام الرومانية مظهراً كلاسيكياً خالداً.
طريقة الاستخدام
أدخل قيمة في كل حقل من حقول الشهر واليوم والسنة. يقبل كل حقل إما رقماً عربياً (مثل 12) أو رقماً رومانياً (مثل XII) — يكتشف المحول أيّهما كتبت ويُخرج الصيغة الأخرى، لذا فهو يعمل في كلا الاتجاهين، حقلاً تلو الآخر. اختر الصيغة لتحديد ترتيب ظهور الأجزاء الثلاثة: الأمريكية (الشهر، اليوم، السنة)، أو الأوروبية (اليوم، الشهر، السنة)، أو ISO (السنة، الشهر، اليوم). واختر الفاصل لتحديد الرمز الذي يفصل بين الأجزاء: نقطة، أو نقطة وسطى، أو نقطة دائرية، أو شَرطة، أو مسافة، أو شَرطة سفلية، أو خط مائل. اترك أي حقل فارغاً لاستبعاده من النتيجة.
شرح المعادلة
للتحويل من الأرقام العربية إلى الرومانية، يستخدم المحول التدوين الطرحي القياسي. يمر عبر أزواج القيمة/الرمز تنازلياً حسب القاعدة:
$$n = \sum_{i} \text{symbol}_i \quad \text{(greedy subtractive: }1000{=}M,\ 900{=}CM,\ \dots,\ 1{=}I\text{)}$$
(1000=M، 900=CM، 500=D، 400=CD، 100=C، 90=XC، 50=L، 40=XL، 10=X، 9=IX، 5=V، 4=IV، 1=I) ويضيف أكبر رمز يناسب القيمة طارحاً قيمته، حتى لا يتبقى شيء:
$$\text{while } n>0:\ \text{append largest symbol} \le n,\ n \mathrel{-}= \text{its value}$$
وللتحويل من الرومانية إلى العربية، يفحص الرموز من اليسار إلى اليمين ويطرح رمزاً عندما يتبعه رمز أكبر منه (كما في \(IX = 9\))، وإلا فإنه يجمع:
$$v = \sum_i \begin{cases} -s_i & s_i < s_{i+1} \\ +s_i & \text{otherwise} \end{cases}$$
مثال تطبيقي
للشهر=12 واليوم=25 والسنة=2024 بالصيغة الأمريكية وفاصل شَرطة سفلية: يصبح 12 هو XII، ويصبح 25 هو XXV، وتصبح 2024 هي MMXXIV (\(MM=2000\)، \(XX=20\)، \(IV=4\)). وبدمجها بالترتيب الأمريكي تنتج XII_XXV_MMXXIV. وإذا انتقلت إلى ترتيب ISO مع فاصل نقطة، ستحصل على MMXXIV.XII.XXV.
الأسئلة الشائعة
ما أكبر رقم يمكن تحويله؟ 3999 (MMMCMXCIX). لا يوجد في الأرقام الرومانية القياسية رمز مفرد للعدد 4000، لذا لا تُدعم القيم الأكبر.
هل يمكنه عرض السنة 0 أو الأرقام السالبة؟ لا. لا يوجد رمز للصفر في الأرقام الرومانية، وأصغر قيمة يمكن تمثيلها هي 1.
هل يتحقق من أن التاريخ حقيقي؟ لا. يُحوَّل كل جزء بشكل مستقل، لذا ستحوّل الأداة بكل سهولة يوماً برقم 31 في شهر برقم 2 — فهي محوّل أرقام محض، وليست أداة للتحقق من صحة التواريخ.