Monday, 15 September 2014

Konversi Bilangan Desimal Ke Romawi Dengan Delphi

DELPHI, UBAHSEGALANYA.BLOGSPOT.CO.ID - Pada kali ini saya akan membuat sebuah tutorial tentang konversi desimal ke romawi menggunakan Delphi. perlu diketahui bilangan romawi merupakan sistem bilangan yang menggunakan kode karakter teks berupa I, X, C, L, M dan D. Sistem bilangan ini termasuk sistem bilangan yang unik dan sangat popular. Untuk mengkonversi sistem bilangan desimal ke romawi perlu dibuat sebuah fungsi khusus, sebab Delphi tidak menyediakan fungsi ini secara default. Fungsi tersebut dapat dilihat pada kode dibawah ini :

function DecToRoman(Decimal : LongInt): string;
const
Numbers :  array[1..13] of Integer =(1, 4, 5, 9, 10, 40, 50, 90, 100, 400, 500, 900, 1000);
Romans: array [1..13] of string = ('I', 'IV', 'V', 'IX', 'X', 'XL', 'L', 'XC', 'C', 'CD', 'D', 'CM', 'M');
var
i : Integer;
begin
Result := '';
for i := 13 downto 1 do
 while (Decimal >= Numbers[i]) do
 begin
 Decimal := Decimal - Numbers[i];
 Result := Result + Romans[i];
 end;
end;
Fungsi diatas akan melakukan proses perulangan untuk mendeteksi bilangan desimal yang dimasukan untuk selanjutnya dicocokan dengan array bilanagan romawi yang sudah disiapkan untuk kemudian dikonversi menjadi bilangan romawi. Untuk lebih jelasanya anda bisa melihat pembuatan aplikasi dibawah ini :
- Buka Delphi
- Buat project baru
- Tambahkan komponen dibawah ini :
No
Nama Komponen
Pallete
Jumlah
1
TGroupBox
Standard
1
2
TEdit
Standard
2
3
TLabel
Standard
2
4
TButton
Standard
1
- Setting komponen seperti dibawah ini :
No
Nama Komponen
Nama Properties
Value
1
GroupBox1
Caption
Halaman Convert
2
Edit1
Text
-
3
Edit2
Text
-
4
Label1
Caption
Bilangan Desimal
5
Label2
Caption
Bilangan Romawi
6
Button1
Caption
Convert
- Buat function baru seperti kode dibawah ini :
function DecToRoman(Decimal : LongInt): string;
const
Numbers :  array[1..13] of Integer =(1, 4, 5, 9, 10, 40, 50, 90, 100, 400, 500, 900, 1000);
Romans: array [1..13] of string = ('I', 'IV', 'V', 'IX', 'X', 'XL', 'L', 'XC', 'C', 'CD', 'D', 'CM', 'M');
var
i : Integer;
begin
Result := '';
for i := 13 downto 1 do
 while (Decimal >= Numbers[i]) do
 begin
 Decimal := Decimal - Numbers[i];
 Result := Result + Romans[i];
 end;
end;
- Klik dua kali pada tombol Convert, dan masukan kode dibawah ini :
procedure TForm1.Button1Click(Sender: TObject);
begin
Edit2.Text := DecToRoman(StrToInt(Edit1.Text));
end;
- Tekan  tombol F9/Compile
- Selesai, selamat mencoba

Konversi Bilangan Desimal Ke Romawi Dengan Delphi Rating: 4.5 Diposkan Oleh: Abu Masail

0 comments:

Post a Comment