Fungsi terbilang versi Delphi ini adalah hasil konversi dari kode yang dibuat untuk Clipper. Cara pemanggilan dan hasil yang dikeluarkannya sama persis dengan kode sebelumnya.
Jika saya sempat, saya akan berusaha untuk membuat beberapa versi fungsi terbilang ini seperti untuk ASP, PHP dan lainnya tapi jangan terlalu berharap ya?
function SayIt(sValue: string):string;
const
Angka : array [1..20] of string =
('', 'satu', 'dua', 'tiga', 'empat',
'lima', 'enam', 'tujuh', 'delapan',
'sembilan', 'sepuluh', 'sebelas',
'duabelas', 'tigabelas', 'empatbelas',
'limabelas', 'enambelas', 'tujuhbelas',
'delapanbelas', 'sembilanbelas');
sPattern: string = '000000000000000';
var
S : string;
Satu, Dua, Tiga, Belas, Gabung: string;
Sen, Sen1, Sen2: string;
Hitung : integer;
One, Two, Three: integer;
begin
One := 1;
Two := 2;
Three := 3;
Hitung := 1;
Kata := '';
S := copy(sPattern, 1, length(sPattern) - length(trim(sValue))) + sValue;
Sen1 := Copy(S, 14, 1);
Sen2 := Copy(S, 15, 1);
Sen := Sen1 + Sen2;
while Hitung < 5 do
begin
Satu := Copy(S, One, 1);
Dua := Copy(S, Two, 1);
Tiga := Copy(S, Three, 1);
Gabung := Satu + Dua + Tiga;
if StrToInt(Satu) = 1 then
Kata := Kata + 'seratus '
else
if StrToInt(Satu) > 1 Then
Kata := Kata + Angka[StrToInt(satu)+1] + ' ratus ';
if StrToInt(Dua) = 1 then
begin
Belas := Dua + Tiga;
Kata := Kata + Angka[StrToInt(Belas)+1];
end
else
if StrToInt(Dua) > 1 Then
Kata := Kata + Angka[StrToInt(Dua)+1] + ' puluh ' +
Angka[StrToInt(Tiga)+1]
else
if (StrToInt(Dua) = 0) and (StrToInt(Tiga) > 0) Then
begin
if ((Hitung = 3) and (Gabung = '001')) or
((Hitung = 3) and (Gabung = ' 1')) then
Kata := Kata + 'seribu '
else
Kata := Kata + Angka[StrToInt(Tiga)+1];
end;
if (hitung = 1) and (StrToInt(Gabung) > 0) then
Kata := Kata + ' milyar '
else
if (Hitung = 2) and (StrToInt(Gabung) > 0) then
Kata := Kata + ' juta '
else
if (Hitung = 3) and (StrToInt(Gabung) > 0) then
begin
if (Gabung = '001') or (Gabung = ' 1') then
Kata := Kata + ''
else
Kata := Kata + ' ribu ';
end;
Hitung := Hitung + 1;
One := One + 3;
Two := Two + 3;
Three := Three + 3;
end;
if length(Kata) > 1 then Kata := Kata + ' rupiah ';
if (StrToInt(Sen) > 0) and (StrToInt(Sen) < 20) then
begin
if StrToInt(Sen) < 10 then Sen := Copy(Sen, 2, 1);
Kata := Kata + Angka[StrToInt(Sen)+1] + ' sen';
end
else
if StrToInt(Sen) > 19 then
Kata := Kata + Angka[StrToInt(Sen1)+1] + 'puluh ' +
Angka[StrToInt(Sen2)+1] + ' sen';
Result := Kata;
end;
mas…
makasih ya atas sharing nya.
kak klo ada conth program ya tolong dikirimin ke email saya donk makasih ya
download di http://www.ziddu.com/download/8434295/Terbilang.rar.html
terima kasih mas atas sharingnya kalo mo konsultasi di mana ya mas?
yes, berhasil.. trims. akhirnya saya berhasil buat programnya…
Dapat di download di
download di http://www.ziddu.com/download/8434295/Terbilang.rar.html
nice info, nice sharing…
salam kenal…
Thank you for this invaluable information. If you are looking for the needs of hydraulic tools can contact me on the following page : https://www.ksj.co.id/