Hello gan's, nih kode program dalam bahasa delphi untuk melakukan fungsi terbilang, misalnya, gan's menginput nilai 1000 maka akan menghasilkan Seribu.
Kompilasi sebagai unit untuk kemudian di include (uses) dalam program utama.
Syntax penggunaan dengan memanggil fungsi : bilang(val:string):string.
Digit maksimal adalah 15 digit.
Kompilasi sebagai unit untuk kemudian di include (uses) dalam program utama.
Syntax penggunaan dengan memanggil fungsi : bilang(val:string):string.
Digit maksimal adalah 15 digit.
unit terbilang; interface uses SysUtils,StrUtils; function bilang(const val:string):String; function split(const val:string):string; const kata : array[0..9]of string = ('Nol','Satu','Dua','Tiga','Empat','Lima','Enam','Tujuh','Delapan','Sembilan'); max_len : integer = 15; implementation function bilang(const val:string):String; var s,a : string; out : string; begin s := val; if LeftStr(s,1) = '-' then begin out := 'Minus '; s := RightStr(s,length(s)-1); end else out := ''; if Length(s) > max_len then begin Result := 'OVER LIMIT !!!'; Exit; end; if Length(s) > 12 then begin //trilyun a := MidStr(s,1,Length(s)-12); out := split(a) + ' Trilyun '; s := RightStr(s,length(s)-length(a)); end; if Length(s) > 9 then begin //milyar a := MidStr(s,1,length(s)-9); out := out + split(a) + ' Milyar '; s := RightStr(s,length(s)-length(a)); end; if Length(s) > 6 then begin //juta a := MidStr(s,1,length(s)-6); out := out + split(a) + ' Juta '; s := RightStr(s,length(s)-length(a)); end; if Length(s) > 3 then begin //ribu a := MidStr(s,1,length(s)-3); if StrToInt(a)=1 then out := out + ' Seribu ' else if StrToInt(a)<>0 then out := out + split(a) + ' Ribu '; s := RightStr(s,length(s)-length(a)); end; out := out + split(s); Result := Trim(StringReplace(out,' ',' ',[rfReplaceAll])); end; function split(const val:string):string; var i,i2 : integer; s,out : string; begin s := val; out := ''; if length(s) = 3 then begin i := StrToInt(LeftStr(s,1)); if i = 1 then out := ' Seratus ' else if (i>1) then out := kata[i] + ' Ratus '; s := RightStr(s,2); end; if length(s) = 2 then begin i := StrToInt(LeftStr(s,1)); i2 := StrToInt(RightStr(s,1)); if (i=1) and (i2=0) then out := out + ' Sepuluh ' else if (i=1) and (i2=1) then out := out + ' Sebelas ' else if (i>1) and (i2=0) then out := out + kata[i] + ' Puluh ' else if (i=1) and (i2>0) then out := out + kata[i2] + ' Belas ' else if (i<>0) and (i2<>0) then out := out + kata[i] + ' Puluh ' + kata[i2] else if (i=0) and (i2<>0) then out := out + kata[i2]; end; if Length(s) = 1 then out := out + kata[StrToInt(s)]; Result := out; end; end.
Semoga saja berfungsi codingnya. :D
Title : Membuat Fungsi Terbilang dengan Delphi
Description : Hello gan's, nih kode program dalam bahasa delphi untuk melakukan fungsi terbilang, misalnya, gan's menginput nilai 1000 maka akan...
Description : Hello gan's, nih kode program dalam bahasa delphi untuk melakukan fungsi terbilang, misalnya, gan's menginput nilai 1000 maka akan...
0 Response to "Membuat Fungsi Terbilang dengan Delphi"
Post a Comment