Skip to content

Instantly share code, notes, and snippets.

@demoth
Last active December 31, 2015 17:09
Show Gist options
  • Save demoth/8018290 to your computer and use it in GitHub Desktop.
Save demoth/8018290 to your computer and use it in GitHub Desktop.
def timeToString(hour,mins){
if (hour < 1 || hour > 11 || mins < 0 || mins > 59) return "Time shold be from 1:00 to 12:59"
hours = ['час',['часа']*3, ['часов']*9].flatten()
minutes = ['минут','минута',['минуты']*3, ['минут']*15].flatten()
decs = ['',' двадцать',' тридцать',' сорок',' пятьдесят']
numHours = ['один','два','три','четыре','пять','шесть','семь','восемь','девять','десять','одиннадцать','двенадцать']
numMins = ['ноль','одна','две','три','четыре','пять','шесть','семь','восемь','девять','десять',
'одиннадцать','двенадцать','тринадцать','четырнадцать','пятнадцать','шестнадцать','семнадцать',
'восемнадцать','девятнадцать']
int minDecs = mins < 20 ? 0 : mins / 10 - 1
int minNums = mins < 20 ? mins : mins % 10
return "${numHours[hour-1]} ${hours[hour-1]}" + decs[minDecs] + (minDecs > 0 && minNums == 0 ? ' ' : " ${numMins[minNums]} ") + minutes[minNums]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment