Падежные окончания для числительный Рубль Рубля Рублей C#

Метод для определения окончания для числительных.


/// <summary>
/// aEndings Array Массив слов или окончаний для чисел (1, 4, 5), например ['рубль', 'рубля', 'рублей']
/// </summary>
/// <param name="number"></param>
/// <param name="endingArray"></param>
/// <returns></returns>
public static string GetNumEnding(long number, params string[] endingArray)
{
string ending;

number = number % 100;

if (number >= 11 && number <= 19)
{
ending = endingArray[2];
}
else
{
var i = number % 10;

switch (i)
{
case 1:
ending = endingArray[0];
break;

case 2:
case 3:
case 4:
ending = endingArray[1];
break;

default:
ending = endingArray[2];
break;
}
}

return ending;
}


Добавить комментарий