Minggu, 04 Januari 2009

Array (Konversi Hexa ke Biner)

Array dapat digunakan untuk mengkonversi bilangan hexadesimal menjadi bilangan biner, berikut contoh penggunaanya :



procedure TForm1.Button1Click(Sender: TObject);

const

nilai: array [0..15] of string =

('0000', '0001', '0010', '0011', '0100', '0101', '0110', '0111',

'1000', '1001', '1010', '1011', '1100', '1101', '1110', '1111');

var

i: integer;

hasil_biner:string;

begin

for i := Length(edit1.Text) downto 1 do

begin

hasil_biner := nilai[StrToInt('$'+edit1.Text[i])]+hasil_biner;

end;

edit2.Text:=hasil_biner;

end;


penjelasan singkat program :

const
nilai: array [0..15] of string =
('0000', '0001', '0010', '0011', '0100', '0101', '0110', '0111',
'1000', '1001', '1010', '1011', '1100', '1101', '1110', '1111');
{ digunakan untuk mendeklarisikan sebuah array, dalam program ini array yang dipakai mempunyai nama nilai }

array[0..15] of string
{ merupakan index dari array nilai yang bertipe string, karena bilangan hexa mempunyai basis 16 (0 s/d 15) maka index array yang dideklarasikan menjadi [0..15] }.

('0000', '0001', '0010', '0011', '0100', '0101', '0110', '0111',
'1000', '1001', '1010', '1011', '1100', '1101', '1110', '1111');
{ merupakan hasil/isi dari index array[0..15] }.

Length(edit1.Text)
{digunakan untuk mengetahui panjang suatu data string / banyaknya karakter dalam suatu string), dalam program ini length yang dicari adalah data yang ditampung /dinput pada komponen edit1.}

hasil_biner := nilai[StrToInt('$'+edit1.Text[i])]+hasil_biner;
{ hasil_biner, digunakan untuk menampung data dari hasil proses konversi }.
{ edit1.Text[i], digunakan untuk mengambil tiap karakter data yang ada pada komponen edit1 }.
{ StrToInt('$'+edit1.Text[i]) , digunakan untuk mengonversi bil. hexa menjadi bil. desimal }.
{ nilai[StrToInt('$'+edit1.Text[i])], digunakan untuk mencari hasil dari nilai index array }.


Download contoh program



Tidak ada komentar:

Posting Komentar