Apa itu Bilangan Romawi ?
Bilangan romawi adalah bilangan unik yang memiliki aturan-aturan yang berlaku yang terdiri dari huruf Capital seperi I,X,C,M,V,L. Bilangan romawi memiliki bilangan dasar dan maksimal perulangan ganda pada huruf-huruf dalam suatu angka yaitu 3 kali, misalnya XXX = 30 atau III = 3.
oke langsung saja Konversi Bilangan Angka ke Romawi dengan C# dan VB.NET,
1. Buat sebuah project Windows Form dengan visual studio anda
2. Tambahkan 4 Textbox 2 button dan 4 label lalu desain form seperti gambar dibawah ini
3. Tambahkan namespace System.Collections.Generic
4. Buat fungsi dengan nama RomanToInteger (fungsi ini digunakan untuk merubah romawi ke angka)
C#
public int RomanToInteger(string StrRomanValue) { Dictionary<string,int> RomanNumbers = new Dictionary<string,int>(); RomanNumbers.Add("M", 1000); RomanNumbers.Add("CM", 900); RomanNumbers.Add("D", 500); RomanNumbers.Add("CD", 400); RomanNumbers.Add("C", 100); RomanNumbers.Add("XC", 90); RomanNumbers.Add("L", 50); RomanNumbers.Add("XL", 40); RomanNumbers.Add("X", 10); RomanNumbers.Add("IX", 9); RomanNumbers.Add("V", 5); RomanNumbers.Add("IV", 4); RomanNumbers.Add("I", 1); int result = 0; foreach (var pair in RomanNumbers) { while (StrRomanValue.IndexOf(pair.Key.ToString()) == 0) { result += int.Parse(pair.Value.ToString()); StrRomanValue = StrRomanValue.Substring(pair.Key.ToString().Length); } } return result; }VB.NET
Private Function RomanToInteger(ByVal StrRomanValue As String) As Integer Dim RomanNumbers As New Dictionary(Of String, Integer)() RomanNumbers.Add("M", 1000) RomanNumbers.Add("CM", 900) RomanNumbers.Add("D", 500) RomanNumbers.Add("CD", 400) RomanNumbers.Add("C", 100) RomanNumbers.Add("XC", 90) RomanNumbers.Add("L", 50) RomanNumbers.Add("XL", 40) RomanNumbers.Add("X", 10) RomanNumbers.Add("IX", 9) RomanNumbers.Add("V", 5) RomanNumbers.Add("IV", 4) RomanNumbers.Add("I", 1) Dim result As Integer = 0 For Each pair As KeyValuePair(Of String, Integer) In RomanNumbers While StrRomanValue.IndexOf(pair.Key.ToString()) = 0 result += Integer.Parse(pair.Value.ToString()) StrRomanValue = StrRomanValue.Substring(pair.Key.ToString().Length) End While Next Return result End Function
C#
public string IntegerToRoman(int IntNumberValue) { Dictionary<string, int> RomanNumbers = new Dictionary<string, int>(); RomanNumbers.Add("M", 1000); RomanNumbers.Add("CM", 900); RomanNumbers.Add("D", 500); RomanNumbers.Add("CD", 400); RomanNumbers.Add("C", 100); RomanNumbers.Add("XC", 90); RomanNumbers.Add("L", 50); RomanNumbers.Add("XL", 40); RomanNumbers.Add("X", 10); RomanNumbers.Add("IX", 9); RomanNumbers.Add("V", 5); RomanNumbers.Add("IV", 4); RomanNumbers.Add("I", 1); string result = ""; foreach (var pair in RomanNumbers) { while (IntNumberValue >= pair.Value) { IntNumberValue -= pair.Value; result += pair.Key; } } return result; }
Public Function IntegerToRoman(IntNumberValue As Integer) As String Dim RomanNumbers As New Dictionary(Of String, Integer)() RomanNumbers.Add("M", 1000) RomanNumbers.Add("CM", 900) RomanNumbers.Add("D", 500) RomanNumbers.Add("CD", 400) RomanNumbers.Add("C", 100) RomanNumbers.Add("XC", 90) RomanNumbers.Add("L", 50) RomanNumbers.Add("XL", 40) RomanNumbers.Add("X", 10) RomanNumbers.Add("IX", 9) RomanNumbers.Add("V", 5) RomanNumbers.Add("IV", 4) RomanNumbers.Add("I", 1) Dim result As String = "" For Each pair As KeyValuePair(Of String, Integer) In RomanNumbers While IntNumberValue >= pair.Value IntNumberValue -= pair.Value result += pair.Key End While Next Return result End Function
Mengubah Romawikke Angka |
Mengubah Angka ke Romawi |
Anda dapat mendownload source codenya dibawah ini
Untuk password silahkan klik disini
Sekian pembahasan tentang Konversi Bilangan Angka ke Romawi dengan C# dan VB.NET,
Tunggu tutorial menarik lainnya, karena itu kunjungi terus blog ini