Buat sebuah Program pada menu code foxpro dengan Listing sebagai berikut :
ON ERROR
RETURN .f.
Function Terbilang(MNNUMERIK,St)
Private Hasil,MNLOOP,MCArto,MNONE,MNTWO,MNTREE
Private MCOngko0,MCOngko1,MCOngko2,MCOngko3
Private MCOngko4,MCOngko5,MCOngko6,MCOngko7
Private MCOngko8,MCOngko9
Private MCSATU,MCDUA,MCTIGA,MCGABUNG,MCSEN1,MCSEN2
Hasil=''
MCArto=Str(MNNUMERIK,15,2)
MNONE=1
MNTWO=2
MNTREE=3
MCOngko0=''
MCOngko1="Satu "
MCOngko2="Dua "
MCOngko3="Tiga "
MCOngko4="Empat "
MCOngko5="Lima "
MCOngko6="Enam "
MCOngko7="Tujuh "
MCOngko8="Delapan "
MCOngko9="Sembilan "
MCGABUNG=""
For MNLOOP = 1 To 4
MCSATU=Substr(MCArto,MNONE,1)
MCDUA=Substr(MCArto,MNTWO,1)
MCTIGA=Substr(MCArto,MNTREE,1)
MCGABUNG=MCSATU+MCDUA+MCTIGA
If Val(MCSATU)=1
Hasil=Hasil + "Seratus "
Else
If Val(MCSATU) > 1
Hasil=Hasil + MCOngko&MCSATU + "Ratus "
Endif
Endif
Do Case
Case Val(MCDUA) = 1
Do Case
Case Val(MCTIGA)=0
Hasil=Hasil + "Sepuluh "
Case Val(MCTIGA)=1
Hasil=Hasil + "Sebelas "
Other
Hasil=Hasil + Alltrim(MCOngko&MCTIGA)+;
" Belas "
Endcase
Case Val(MCDUA) > 1
Hasil=Hasil + MCOngko&MCDUA + "Puluh "+;
MCOngko&MCTIGA
Case Val(MCDUA)=0 .And. Val(MCTIGA) > 0
If (MNLOOP=3 .And. MCGABUNG="001") .Or. ;
(MNLOOP=3 .And. MCGABUNG=" 1")
Hasil=Hasil+"Seribu "
Else
Hasil=Hasil+MCOngko&MCTIGA
Endif
Endcase
Do Case
Case MNLOOP=1 .And. Val(MCGABUNG)>0
Hasil=Hasil+"Milyar "
Case MNLOOP=2 .And. Val(MCGABUNG)>0
Hasil=Hasil+"Juta "
Case MNLOOP=3 .And. Val(MCGABUNG)>0
If MCGABUNG="001" .Or. MCGABUNG=" 1"
Hasil=Hasil+" "
Else
Hasil=Hasil+"Ribu "
Endif
Endcase
MNONE=MNONE+3
MNTWO=MNTWO+3
MNTREE=MNTREE+3
Next MNLOOP
MCSEN1=Substr(MCArto,14,1)
MCSEN2=Substr(MCArto,15,1)
If Empty(St)
If Len(Hasil)>1
Hasil=Hasil+"Dollar "
Endif
Do Case
Case Val(MCSEN1)=0 .And. Val(MCSEN2)>0
Hasil=Hasil+MCOngko&MCSEN2
Case Val(MCSEN1) = 1
Do Case
Case Val(MCSEN2)=0
Hasil=Hasil+"Sepuluh"+"Sen"
Case Val(MCSEN2)=1
Hasil=Hasil+"Sebelas"+"Sen"
Case Val(MCSEN2)>1
Hasil=Hasil+Alltrim(MCOngko&MCSEN2)+"belas "+"Sen "
Endcase
Case Val(MCSEN1) > 1
Hasil = Hasil +MCOngko&MCSEN1 + "Puluh " +MCOngko&MCSEN2 +"Sen " Endcase
Else
Hasil=Alltrim(Hasil)
Endif
Return Alltrim(Hasil)
ENDFUNC
*SET PROCEDURE TO bilang_new2.prg
*?terbilang(10)
*?terbilang(10.50)
Setelah itu, pada Formnya tinggal dipakai aja fungsinya.

Tidak ada komentar:
Posting Komentar