FUNCTION Konversi(XANGKA) LOCAL XHURUF, XHASIL, XH1, XH2, XH3, i, ii, J If XANGKA>0 STORE ' ' to XHURUF, XHASIL, XH1, XH2, XH3 DECLARE XHUR[9], XSAT[9] XHUR[1] = 'Satu ' XHUR[2] = 'Dua ' XHUR[3] = 'Tiga ' XHUR[4] = 'Empat ' XHUR[5] = 'Lima ' XHUR[6] = 'Enam ' XHUR[7] = 'Tujuh ' XHUR[8] = 'Delapan ' XHUR[9] = 'Sembilan ' XSAT[1] = 'Ratus ' XSAT[2] = 'Puluh ' XSAT[3] = ' ' XSAT[4] = 'Ratus ' XSAT[5] = 'Puluh ' XSAT[6] = ' ' XSAT[7] = 'Ratus ' XSAT[8] = 'Puluh ' XSAT[9] = ' ' XANGKA= INT(XANGKA) XHURUF = ALLTRIM(STR(XANGKA)) XHURUF = SPACE(9-LEN(XHURUF))+XHURUF i = LEN(XHURUF) XH1 = '0' XH3 = '' XHASIL = '' do while (i > 0) AND (XH1 <> ' ') if (substr(XHURUF, i, 1) <> ' ') AND (i = 3) XHASIL = 'Juta ' + XHASIL endif if i = 6 XH3 = substr(XHURUF, 4, 3) if (substr(XHURUF, i, 1) <> ' ') AND (XH3 <> '000') XHASIL = 'Ribu ' + XHASIL endif endif XH1 = substr(XHURUF, i, 1) ii = i % 3 if (ii > 0) OR (XH3 = '001') OR (XH3 = ' 1') XHUR[1] = 'Se' else XHUR[1] = 'Satu ' endif j = VAL(XH1) if ii = 0 XH2 = substr(XHURUF, i - 1, 1) if XH2 = '1' XHUR[1] = 'Se' if XH1 <> '0' XHASIL = XHUR[j] + 'belas ' + XHASIL else XHASIL = 'Sepuluh ' + XHASIL endif i = i - 2 else if j = 0 XHASIL = LTRIM(XSAT[i]) + XHASIL else XHASIL = XHUR[j] + LTRIM(XSAT[i]) + XHASIL endif i = i - 1 endif else if XH1 = '0' i = i - 1 endif if (j > 0) XHASIL = XHUR[j] + XSAT[i] + alltrim(XHASIL) i = i - 1 endif endif enddo XHASIL = LTRIM(XHASIL) XHASIL = UPPER(left(XHASIL,1)) + substr(XHASIL, 2) ELSE XHASIL='Nol ' ENDIF RETURN XHASIL ENDFUNC