Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
First solution in Creative category for Speech Module by radek120299
FIRST_TEN = {'1': "one", '2':"two", '3':"three", '4':"four", '5':"five", '6':"six", '7':"seven",
'8': "eight", '9':"nine"}
SECOND_TEN = {"10":"ten", '11':"eleven", '12':"twelve", '13':"thirteen", '14':"fourteen", '15':"fifteen",
"16":"sixteen", '17':"seventeen", '18':"eighteen", '19':"nineteen"}
OTHER_TENS = {'2':"twenty", '3':"thirty", '4':"forty", '5':"fifty", '6':"sixty", '7':"seventy",
'8':"eighty", '9':"ninety"}
HUNDRED = {"1": "hundred"}
def checkio(number):
odp=""
number=str(number)
if len(number)==1 and number!="0": #dla 2 5 8 9
odp=odp+FIRST_TEN[number]
if len(number)==2 and number[0]=="1": #dla 12 16 17
odp=odp+SECOND_TEN[number]
if len(number)==2 and number[0]!="1" and number[1]!="0": # dla 23 32 73
odp=odp+OTHER_TENS[number[0]]+" "+FIRST_TEN[number[1]]
if len(number)==2 and number[0]!="1" and number[1]=="0":
odp=odp+OTHER_TENS[number[0]]
if len(number)==3 and number[1]=="0" and number[2]=="0": # dla 100 200 300
odp=odp+FIRST_TEN[number[0]]+" " + HUNDRED["1"]
if len(number)==3 and number[1]!="0" and number[2]=="0" and number[1]!="1": #dla 120 340 180 940
odp=odp+FIRST_TEN[number[0]]+" " + HUNDRED["1"]+" "+OTHER_TENS[number[1]]
if len(number)==3 and number[1]!="0" and number[1]=="1":
odp=odp+FIRST_TEN[number[0]]+" " + HUNDRED["1"]+" "+SECOND_TEN[number[1:]] #dla 110 115 118
if len(number)==3 and number[1]!="0" and number[1]!="1" and number[2]!="0":
odp=odp+FIRST_TEN[number[0]]+" "+HUNDRED["1"] +" "+OTHER_TENS[number[1]]+" "+FIRST_TEN[number[2]]
if len(number)==3 and number[1]=="0" and number[2]!="0": #dla 101 102 105
odp=odp+FIRST_TEN[number[0]]+" " + HUNDRED["1"]+" "+ FIRST_TEN[number[2]]
print(odp)
return odp
if __name__ == '__main__':
#These "asserts" using only for self-checking and not necessary for auto-testing
assert checkio(4) == 'four', "1st example"
assert checkio(133) == 'one hundred thirty three', "2nd example"
assert checkio(12) == 'twelve', "3rd example"
assert checkio(101) == 'one hundred one', "4th example"
assert checkio(212) == 'two hundred twelve', "5th example"
assert checkio(40) == 'forty', "6th example"
assert not checkio(212).endswith(' '), "Don't forget strip whitespaces at the end of string"
print('Done! Go and Check it!')
Nov. 8, 2018