Неделю назад писал эту функцию на JavaScript. Исходники не сохранились но смысл там примерно следущий
в функцию передается 4 параметра:
1) Число
2) 'игра'
3) 'игры'
4) 'игр'
Далее функция смотрит
если поледняя цифра числа равна 1 то возвращаем 'игра'
если последняя цифра числа лежит в интервале от 2 до 4 то возвращаем 'игры'
если последняя цифра числа лежит в интервале от 5 до 9 либо 0 то возвращаем 'игр'.
НО !!!! (великий могучий русский язык) есть исключения. Это числа которые находятся во вторых десятках:
11 - 19 - игр
111-119 - игр
211-219 - игр
311-319 - игр
.....
1011-1019 - игр
....
Поэтому к общему правилу добавляем еще дополнительное условие:
выделяем последнии 2 разряда от числа и смотрим принадлежит ли это число интервалу
от 11 до 19 если да то возвращаем 'игр' а если нет то выводим по общему правилу(см. выше)
Последняя цифра выделяется операцией %10
две последние %100 соответственно.
Саму функцию сейчас нету времени писать, но в целом алгоритм такой.
|