Untuk angka dari 1 sampai 10 yang sudah biasa anda perhatikan seperti I, II, III, IV, V, VI, VII, VIII, IX, X. Sedangkan simbol angka romawi yang ada adalah I (= 1), V (= 5), X (= 10), L (= 50), C (= 100), D (= 500), and M (= 1000).
Contoh :
XX = 20, XV = 15, VI = 6, IV = 4,
XL = 40, CM = 900, XLVII = 47, CXVI = 116,
MCXX = 1120, MCMXIV = 1914.
Aturan: Simbol romawi yang muncul tidak lebih dari tiga kali berturut-turut
- IIII (salah) seharusnya IV = 4
- LXXXX (salah) seharusnya XC = 90
- DCCCC (salah) seharusnya CM = 900
Algoritma Konversi Angka Arabic ke Angka Romawi
- Baca data dari keyboard, Simpan ke variable angka.
- Lakukan pengecekan, bila format bukan angka, kembali ke baris ke-1
- Lakukan pengecekan, angka > 3999, kembali ke baris ke-1
- Inisialisasi Romawi = "" dan Jumlah loop = Length(Angka)
- Cek per-digit dari posisi belakang (satuan) sampai depan (ribuan), sebanyak panjang_digit, contoh : 3924, maka yang diproses angka 4 terlebih dahulu, lalu 2, 9 sampai dengan 3.
- Jika digit=9, maka ambil dua angka romawi, bila 9=IX, 90=XC, 900=CM
- Jika digit>=5, maka ambil satu angka romawi pasti yaitu, bila 5=V, 50=L, 500=V, serta tambahan digit dengan syarat, bila 6=VI, 7=VII, 8=VIII, begitu juga 60=LX, 70=LXX, 80=LXXX, sistem ratusan juga mengikuti aturan yang sama
- Jika digit=4, maka ambil dua angka romawi, bila 4=IV, 40=XL, 400=CV
- Jika digit<=3, maka tambahkan digit dengan syarat: bila 1=I, 2=II, 3=III, begitu juga 10=X, 20=XX, 30=XXX, sistem ratusan juga mengikuti aturan yang sama. Simpan dalam hasil_sementara untuk setiap digit huruf.11. Romawi = Romawi + hasil_sementara
- Lanjutkan untuk digit lebih atas. Misal setelah satuan, kerjakan puluhan, ratusan, dst. Ulang baris ke-6 sampai semua digit selesai dikerjakan.
- Cetak Romawi.
- Selesai.
Tidak ada komentar:
Posting Komentar