Get Gifs at CodemySpace.com

Sabtu, 21 Juni 2014

Program Konversi Bilangan (Array)

Assalamu'alaikum Wr.Wb
Sudah lamaaaa sekali tidak posting nih, :)

Kali ini, saya akan memposting tentang membuat program dengan Aplikasi Delphi 7. Hal ini dikarenakan untuk memenuhi tugas akhir semester untuk Mata Kuliah Praktikum Struktur Data.

Untuk Program yang pertama, saya membuat program Konversi Bilangan, dari Desimal ke Biner, dari Desimal ke Octal, dan dari Desimal ke Hexadesimal.

Secara keseluruhan, bentuk Form seperti ini :

OverAll
Listing Programnya

 Langkah-langkah menulis scriptnya ::
1. Buat form seperti di atas, setelah itu klik dua kali pada button Dec to Bin. Button ini berfungsi untuk mengubah bilangan desimal ke bilangan Biner.

2. Setelah muncul list program,  tulis script berikut :
 
  procedure TDyahNaufal_2B.Button1Click(Sender: TObject);
var
a:array[1..99]of word;
i,k,d:word;

begin
edit2.Clear;
d:=strtoint(edit1.Text);
k:=0;
while d>=2 do begin
k:=k+1;
a[k]:=d mod 2;
d:=d div 2;
end;
k:=k+1;
a[k]:=d;
for i:=k downto 1 do
edit2.Text:=edit2.Text+inttostr(a[i]);
end;


 3. Untuk mengeceknya, berhasil apa tidaknya, silahkan tekan F9 pada keyboard atau klik icon running berwarna hijau pada toolbar. Jika ada yang salah, akan muncul warna MERAH pada listing programnya.

4. Jika berhasil, tekan ESC dulu pada keyboard untuk melanjutkan ke Button berikutnya.

5. Klik dua kali pada Button Dec to Oct, yang berfungsi sebagai button untuk mengubah Desimal ke bilangan Octal.

6. Selanjutnya, script yang ditulis adalah sebagai berikut :

  procedure TDyahNaufal_2B.Button3Click(Sender: TObject);
var
a:array[1..99]of word;
i,k,d:word;

begin
edit2.Clear;
d:=strtoint(edit1.Text);
k:=0;
while d>=8 do begin
k:=k+1;
a[k]:=d mod 8;
d:=d div 8;
end;
k:=k+1;
a[k]:=d;
for i:=k downto 1 do
edit2.Text:=edit2.Text+inttostr(a[i]);
end;


 Dan tekan F9 untuk pengecekkan.. Jika berhasil ESC dulu, kalau gagal atau ada warna merah, silahkan cek satu persatu pada list programnya.

7. Untuk Button berikutnya, Dec to Hex berfungsi untuk mengkonversi dari bilangan desimal ke bilangan Hexadesimal. Seperti biasa, klik dua kali pada button tersebut.

8. Untuk Hexadesimal kali ini, 10 dituliskan A dan seterusnya sampai 16 (0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F,G). Untuk yang ini kita tambahkan percabangan Case of .
Dan script yang dituliskan ialah ::

 procedure TDyahNaufal_2B.Button4Click(Sender: TObject);
var
a:array[1..99]of word;
i,k,d:word;
c:shortstring;

begin
edit2.Clear;
d:=strtoint(edit1.Text);
k:=0;
while d>=16 do begin
k:=k+1;
a[k]:=d mod 16;
d:=d div 16;
end;
k:=k+1;
a[k]:=d;
for i:=k downto 1 do begin
case a[i] of
10:c:='A';
11:c:='B';
12:c:='C';
13:c:='D';
14:c:='E';
15:c:='F';
16:c:='G';
else c:=inttostr(a[i]);
end;
edit2.Text:=edit2.Text+c;
end;


Lalu tekan F9.

9. Yang terakhir, jangan lupa untuk Button Exit, yang ini biasanya digunakan untuk keluar dari program yang sedang berjalan/running. Berikut scriptnya : ;)

procedure TDyahNaufal_2B.Button2Click(Sender: TObject);
begin
HALT
end;

nahhh, pasti ada yang tanya, dari tulisan script di atas pasti ada tulisan TDyahNaufal_2B.Button*Click. Itu maksudnya, yang DyahNaufal_2B itu nama form yang saya pakai, dan Button*click itu menunnjukan button atau tombol yang dipakai ;)
  
  
Running Program

Inilah jadinya program yang dibuat tadi ketika di Run.

Untuk hasil dari masing-masing konverter ::
Konversi dari Desimal ke Biner

Konversi Desimal ke Octal

Konversi Desimal ke Hexadesimal

Yupps, sekian dari posting saya, kalaulah ada yang tidak cocok seperti yang saya tuliskan, mohon dibenarkan.

Terima Kasih,
Wassalamu'alaikum Wr.Wb

Tidak ada komentar:

Posting Komentar