Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
Speech Module solution in Uncategorized category for Speech Module by capback250
import re, unittest
FIRST_TEN = ["one", "two", "three", "four", "five", "six", "seven",
"eight", "nine"]
SECOND_TEN = ["ten", "eleven", "twelve", "thirteen", "fourteen", "fifteen",
"sixteen", "seventeen", "eighteen", "nineteen"]
OTHER_TENS = ["twenty", "thirty", "forty", "fifty", "sixty", "seventy",
"eighty", "ninety"]
HUNDRED = "hundred"
def checkio(number):
match = re.findall(r"\d0[0-9]$", str(number))
match1 = re.findall(r"\d1[0-9]$", str(number))
match2 = re.findall(r"\d[^1-2]0$", str(number))
if len(str(number)) == 1:
return FIRST_TEN[number-1]
if len(str(number)) == 2:
if number < 20:
return SECOND_TEN[(number-10)]
elif str(number).endswith("0"):
return OTHER_TENS[(number/10-2)]
else:
return OTHER_TENS[(number/10-2)]+" "+FIRST_TEN[(number%10-1)]
if len(str(number)) == 3:
if str(number).endswith("00"): # zakanc na 00
return FIRST_TEN[(number/100-1)]+" "+HUNDRED
elif len(match) != 0: # zakanc na 0[1-9]
return FIRST_TEN[(number/100-1)]+" "+HUNDRED+" "+FIRST_TEN[(int(str(number)[2:])-1)]
elif len(match1) != 0: # 1[0-9]
return FIRST_TEN[(number/100-1)]+" "+HUNDRED+" "+SECOND_TEN[(int(str(number)[2:]))]
elif len(match2) != 0: # [^1-2]0
return FIRST_TEN[(number/100-1)]+" "+HUNDRED+" "+OTHER_TENS[(int(str(number)[1:-1])-2)]
else:
return FIRST_TEN[(number/100-1)]+" "+HUNDRED+" "+OTHER_TENS[(int(str(number)[1:-1])-2)]+" "+FIRST_TEN[(int(str(number)[2:])-1)]
Aug. 6, 2015