| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293 | 
							- func numberToWords(num int) string {
 
- 	if num == 0 {
 
- 		return "Zero"
 
- 	}
 
- 	return ntowRecurse(num)
 
- }
 
- func ntowRecurse(num int) (res string) {
 
- 	if num/1000000000 != 0 {
 
- 		res += ntowRecurse(num/1000000000) + getWord(0) + getWord(1000000000) + getWord(0) + ntowRecurse(num%1000000000)
 
- 	} else if num/1000000 != 0 {
 
- 		res += ntowRecurse(num/1000000) + getWord(0) + getWord(1000000) + getWord(0) + ntowRecurse(num%1000000)
 
- 	} else if num/1000 != 0 {
 
- 		res += ntowRecurse(num/1000) + getWord(0) + getWord(1000) + getWord(0) + ntowRecurse(num%1000)
 
- 	} else if num/100 != 0 {
 
- 		res += ntowRecurse(num/100) + getWord(0) + getWord(100) + getWord(0) + ntowRecurse(num%100)
 
- 	} else if 20 <= num {
 
- 		res += getWord(num-num%10) + getWord(0) + ntowRecurse(num%10)
 
- 	} else if num != 0 {
 
- 		res = getWord(num)
 
- 	}
 
- 	return strings.Trim(res, " ")
 
- }
 
- func getWord(num int) string {
 
- 	switch num {
 
- 	case 1:
 
- 		return "One"
 
- 	case 2:
 
- 		return "Two"
 
- 	case 3:
 
- 		return "Three"
 
- 	case 4:
 
- 		return "Four"
 
- 	case 5:
 
- 		return "Five"
 
- 	case 6:
 
- 		return "Six"
 
- 	case 7:
 
- 		return "Seven"
 
- 	case 8:
 
- 		return "Eight"
 
- 	case 9:
 
- 		return "Nine"
 
- 	case 10:
 
- 		return "Ten"
 
- 	case 11:
 
- 		return "Eleven"
 
- 	case 12:
 
- 		return "Twelve"
 
- 	case 13:
 
- 		return "Thirteen"
 
- 	case 14:
 
- 		return "Fourteen"
 
- 	case 15:
 
- 		return "Fifteen"
 
- 	case 16:
 
- 		return "Sixteen"
 
- 	case 17:
 
- 		return "Seventeen"
 
- 	case 18:
 
- 		return "Eighteen"
 
- 	case 19:
 
- 		return "Nineteen"
 
- 	case 20:
 
- 		return "Twenty"
 
- 	case 30:
 
- 		return "Thirty"
 
- 	case 40:
 
- 		return "Forty"
 
- 	case 50:
 
- 		return "Fifty"
 
- 	case 60:
 
- 		return "Sixty"
 
- 	case 70:
 
- 		return "Seventy"
 
- 	case 80:
 
- 		return "Eighty"
 
- 	case 90:
 
- 		return "Ninety"
 
- 	case 100:
 
- 		return "Hundred"
 
- 	case 1000:
 
- 		return "Thousand"
 
- 	case 1000000:
 
- 		return "Million"
 
- 	case 1000000000:
 
- 		return "Billion"
 
- 	default:
 
- 		return " "
 
- 	}
 
- }
 
 
  |