You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
/* Класс формирует число для вывода суммы оплаты и добавляет к нему слово "Рубль" с нужным окончанием */
StringnumberFormat(doublenumber) {
StringwordEnd;
intfloor = (int) Math.floor(number); // Округляем число до целого
if (floor % 10 == 1 && floor % 100 != 11) { // Вычисляем остаток от деления числа на 10 и на 100 (1 - рубль, а 111 - рублей)
wordEnd = "рубль"; // Если остаток соответствует условию, то возвращаем "рубль"
}
elseif (floor % 10 >= 2 && floor % 10 <=4 && (floor % 100 < 10 || floor % 100 >= 20)) { // Вычисляем остаток от деления числа на 10 и на 100 (2 - рубля, а 112 - рублей)
wordEnd = "рубля"; // Если остаток соответствует условию, то возвращаем "рубля"
}
else { // Во всех остальных случаях
wordEnd = "рублей"; // Возвращаем "рублей"
}
returnString.format(Locale.ROOT,"%.2f", number) +" "+ wordEnd; // Возвращаем число с двумя знаками после точки (Locale как раз для точки, иначе выводится запятая)