A
Alyona
Здравствуйте! Нужно выполнить вычисление используя переменные типа Decimal (нужна высокая точность вычилений, примерно 1е-18), но функция Math.Cos либо их не поддерживает, либо я просто не знаю как это реализовать. Может в С# для вычисления Cos можно использовать другую функцию?
При комплиляции выдается ошибка: Наиболее подходящий перегруженный метод для "System.Math.Cos(double)" имеет несколько недопустимых аргументов.
Применив Math.Cos((double)5*x) возникает ошибка: Оператор "*" не может применяться к операндам типа "double" и "decimal".
Мне не достаточно точности double (15-16 digits), мне нужна точность не мене 18 цифр за запятой, поддерживает ли такую точность какой-нибудь тип данных в C#?
Код:
static decimal f(decimal x, decimal y)
{
decimal fx;
fx = 10 * Math.Cos(5 * x) - 2 * y;
return fx;
}
Применив Math.Cos((double)5*x) возникает ошибка: Оператор "*" не может применяться к операндам типа "double" и "decimal".
Мне не достаточно точности double (15-16 digits), мне нужна точность не мене 18 цифр за запятой, поддерживает ли такую точность какой-нибудь тип данных в C#?