Rim sonlari 7 xil belgilar bilan yasalari. Ular I
, V
, X
, L
, C
, D
va M
bo’lib, rim raqamlari deyiladi.
Belgi Qiymati I 1 V 5 X 10 L 50 C 100 D 500 M 1000
Masalan, 2 rim raqamlarida – II
. 12
– XII
(X + II
). 27
– XXVII
(XX + V + II
).
Rim raqamlari odatda chapdan o’ngga kattasidan boshlab yoziladi, lekin IIII
soni IV
ya’ni 5-1=4 ko’rinshida beriladi (V
– I
). Huddi shu qoida 9 uchun ham amal qiladi – IX
. Jami 6 xil holatda ayirish bilan son hosil qilinadi:
I
belgisiV
(5) vaX
(10) dan oldin qo’yilib 4 va 9 hosil qilinadi.X
belgisiL
(50) vaC
(100) oldiga qo’yilsa, 40 va 90.C
belgisiD
(500) vaM
(1000) oldiga qo’yilsa, 400 va 900 hosil bo’ladi.
Massalaning sharti – oddiy sonni rim raqamlariga o’tkazish. bunda son 1 <= n <= 3999
oralig’ida beriladi deb olinadi.
Misol 1:
Input: num = 58 Output: "LVIII" Tushuntirish: L = 50, V = 5, III = 3.
Misol 2:
Input: num = 1994 Output: "MCMXCIV" Tushuntirish: M = 1000, CM = 900, XC = 90 and IV = 4.
Ishlash tartibi
Bu yerda hech qanday murakkablik yo’q:
- Sondan minglik, yuzlik, o’nlik, va birlik raqamlari ajratib olinadi.
- Minglik soni miqdoricha
M
yoziladi (maksimum son 3999 bo’lgani uchun,M
miqdori 3tagacha bo’lishi mumkin). - Yuzlik soni rim raqamlariga o’tkaziladi. Agar son
1 <= n <= 3
bo’lsa, son miqdorichaC
; agar sonn = 4
bo’lsa,CD
; agar sonn <= 5 <= 8
bo’lsa, D va sonn - 5
miqdorichaC
; sonn = 9
bo’lsa,CM
yoziladi. - O’nlik soni rim raqamlariga o’tkaziladi. Agar son
1 <= n <= 3
bo’lsa, son miqdorichaX
; agar sonn = 4
bo’lsa,XL
; agar sonn <= 5 <= 8
bo’lsa,L
va sonn - 5
miqdorichaX
; sonn = 9
bo’lsa,XC
yoziladi. - Va nihoyat birlik soni rim raqamlariga o’tkaziladi. Agar son
1 <= n <= 3
bo’lsa, son miqdorichaI
; agar sonn = 4
bo’lsa,IV
; agar sonn <= 5 <= 8
bo’lsa,V
va sonn - 5
miqdorichaI
; sonn = 9
bo’lsa,IX
yoziladi.
Yuqoridagi tartibni kodga ko’chiramiz. Ishlash tartibiga ko’ra, yuzlik, o’nlik va birlik sonlarining rim raqamlariga o’tkazish ko’rinishi bir xil. Demak ularni qo’shimcha funksiya yordamida yasab olamiz.