Изменение окончаний - C#
Формулировка задачи:
Для программы требуется что бы, например:
Пользователь вводит в textbox цифру 1.
А рядом стоящий label при этом изменяется на "год".
Пользователь вводит в textbox число 12.
А рядом стоящий label изменяется уже на "лет".
Есть ли какое-нибудь универсальное средство?
Пробовал сделать через окончание числа, но:
2 - года, 12 - лет, 122 - года. То есть не очень то угадаешь.
Решение задачи: «Изменение окончаний»
textual
Листинг программы
public string Foo(int age)
{
if (age <= 0)
throw new ArgumentException("age");
if (age >= 5 && age < 21)
return "лет";
int mod = age % 10;
if (mod == 1)
return "год";
if (mod > 1 && mod < 5)
return "года";
return "лет";
}