Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
15-liner: working perfect for <= 9999 solution in Clear category for Speech Module by Stensen
units = ['one', 'two', 'three', 'four', 'five', 'six', 'seven', 'eight', 'nine', 'ten', 'eleven', 'twelve', 'thirteen', 'fourteen', 'fifteen', 'sixteen', 'seventeen', 'eighteen', 'nineteen']
tens = ['twenty', 'thirty', 'forty', 'fifty', 'sixty', 'seventy', 'eighty', 'ninety']
hunderds = ['hundred', 'thousand', 'and']
def checkio(i):
result, unit, ten, hundered, thousand = [], i%10, (i//10)%10, (i//100)%10, (i//1000)%10,
if thousand != 0: result.append(units[thousand-1] + ' ' + hunderds[1])
if i%1000 != 0:
if hundered != 0: result.append(units[hundered-1] + ' ' + hunderds[0])
if i%100 != 0:
if ten < 2: result.append(units[i%100-1])
else:
result.append(tens[ten-2])
if unit != 0: result.append(units[unit-1])
return ' '.join(result)
Oct. 24, 2020
Comments: