Catatan tentang teknologi komputer, Pemrograman & Robotik

Blog Pribadi

Blog yang membahas tentang teknologi komputer, pemrograman dan website

Cari Blog Ini

Diberdayakan oleh Blogger.

Starlink : Revolusi Internet Satelit di Era Digital

Di era digital saat ini, akses internet telah menjadi kebutuhan pokok bagi banyak orang di seluruh dunia. Namun, meskipun kemajuan teknologi...

Fungsi Terbilang - Delphi


Kali ini saya akan bagikan source code bagaimana cara membuat fungsi terbilang pada pemrograman delphi, sebelumnya fungsi terbilang ini sering dipakai ketika membuat report (laporan) atau nota pada program kasir dimana fungsinya untuk menjelaskan secara tulisan nominal angka yang di keluarkan atau di inputkan.
contoh sederhanya seperti ini :

Nilai Total Belanja = Rp. 52.000,00
Nilai Terbilang = Lima Puluh Dua Ribu Rupiah

sebenarnya fungsi ini sudah lama dipakai para programmer, dan fungsi yang saya cantumkan ini juga hasil dari googling 5/6 tahun lalu saat sering mengerjakan projek aplikasi kasir.

okey langsung saja kita praktekan :
hal pertama yang harus dilakukan adalah mendesain form sederhana seperti ini :












pada gambar diatas kita menggunakan komponen standard pada delphi 7

2 komponen Label
1 komponen Edit
1 komponen Button

atur properties caption  masing-masing komponen

setelah itu, buatlah sebuah fungsi seperti dibawah ini :




implementation
function terbilang(dNumber: Extended): string;
const
 aNum: array[1..9] of String = ('satu', 'dua', 'tiga', 'empat', 'lima', 'enam', 'tujuh', 'delapan', 'sembilan');
 aUnit: array[1..5] of String = ('trilyun', 'milyar', 'juta', 'ribu', '');
var
 iCount, iDigit1, iDigit2, iDigit3: Integer;
 sNum2Str, s3Digit, sWord: string;
begin
Result := '';
 if (dNumber=0) then Exit;
 sNum2Str:=Copy(Format('%18.2f', [dNumber]), 1, 15);
 for ICount:=1 to 5 do
 begin
 s3Digit:=Copy(sNum2Str, iCount*3-2, 3);
 if (StrToIntDef(s3Digit, 0)<>0) then
 begin
 sWord:='';
 iDigit1:=StrToIntDef(Copy(s3Digit, 1, 1), 0);
 iDigit2:=StrToIntDef(Copy(s3Digit, 2, 1), 0);
 iDigit3:=StrToIntDef(Copy(s3Digit, 3, 1), 0);
 case iDigit1 of
 2..9: sWord:=sWord+aNum[iDigit1]+' ratus ';
 1: sWord:=sWord+'seratus ';
 end; { case }
case iDigit2 of
 2..9: sWord:=sWord+aNum[iDigit2]+' puluh ';
 1: case iDigit3 of
 2..9: sWord:=sWord+aNum[iDigit3]+' belas ';
 1: sWord:=sWord+'sebelas ';
 0: sWord:=sWord+'sepuluh ';
 end; { case }
 end; { case }
if (iDigit2<>1) then
 case iDigit3 of
 2..9: sWord:=sWord + aNum[iDigit3] + ' ';
 1: if (iCount=4) and ((iDigit1+iDigit2)=0) then
 sWord:=sWord+'se'
 else
 sWord:=sWord+'satu ';
 end;
 Result:=Result+sWord+aUnit[iCount]+' ';
 end;
end;
while Result[Length(Result)]=' ' do
SetLength(Result, Length(Result)-1);
end;


letakkan fungsi tersebut dibawah implementation

berikutnya pada tombol terbilang sisipkan kode seperti ini (double klik button terbilang) :



label1.caption:=terbilang(StrToFloatDef(edit1.Text,0));

penjelasanya :

label1 = terbilang
edit1 = kolom inputan nominal

jadi hasilnya ketika program dijalankan akan tampak seperti ini :










nah...ngerti kan maksud saya ?

ketika tombol terbilang di tekan label1 akan berubah properties caption nya dan menuliskan berapa terbilangnya nominal yang diinputkan pada komponen edit.


simple dan bermanfaat bukan....?
silahkan teman-teman sekalian coba dan terapkan pada aplikasi yang teman-teman kerjakan, semoga tutorial kali ini bermanfaat.

Sala


 

4 komentar:

  1. aku coba ya mas,, terimakasih atas sharing nya

    BalasHapus
  2. Bagus tutorialnya kak, reques tutorial koneksi database mysql dengan delphi 7 nya ya kak

    BalasHapus
  3. Apa bisa script diatas di implementasikan pada bahasa pemrograman VB(visual basic)

    BalasHapus