Beispiel #1
0
        /// <summary>
        /// Записывает пропись суммы в заданной валюте в <paramref name="result"/> строчными буквами.
        /// </summary>
        public static StringBuilder Пропись(decimal сумма, Валюта валюта, StringBuilder result)
        {
            decimal целая   = Math.Floor(сумма);
            uint    дробная = (uint)((сумма - целая) * 100);

            Число.Пропись(целая, валюта.ОсновнаяЕдиница, result);
            return(ДобавитьКопейки(дробная, валюта, result));
        }
Beispiel #2
0
        /// <summary>
        /// Записывает пропись суммы в заданной валюте в <paramref name="result"/> строчными буквами.
        /// </summary>
        public static StringBuilder Пропись(double сумма, Валюта валюта, StringBuilder result)
        {
            double целая = Math.Floor(сумма);

            // Вынесение 100 за скобки позволяет избежать ошибки округления
            // например, когда сумма = 1234.51.
            uint дробная = (uint)(сумма * 100) - (uint)(целая * 100);

            Число.Пропись(целая, валюта.ОсновнаяЕдиница, result);
            return(ДобавитьКопейки(дробная, валюта, result));
        }