NaN при работе с классом Math

179
22 ноября 2018, 22:30

Почему-то в выходе переменная otvet = NaN , отладчик ничего не хочет объяснять.

double x = 45;
double y = 45;
double otvet = Math.Pow((1 - Math.Tan(x)), (Math.Cos(x)/Math.Sin(x)));
otvet += Math.Cos(x - y);

Как уже заметили при x = 0,1 и y = 0,1 NaN не будет

Заранее спасибо

Answer 1

тригонометрические функции в C# принимают в качестве аргумента радианы, a радианы отличаются от градусов в Math.PI/180 раз:

double otvet = Math.Pow(1 - Math.Tan(x * Math.PI / 180), Math.Cos(x * Math.PI / 180) / Math.Sin(x * Math.PI / 180));
otvet += Math.Cos((x - y) * Math.PI / 180);
READ ALSO
Функция по расписанию

Функция по расписанию

Есть два массива с временем(start[8:00, 8:50, 9:50], stop[8:40, 9:30, 10:30])

140
Узнаем ширину панели с кнопками на сенсорном экране

Узнаем ширину панели с кнопками на сенсорном экране

Хотел узнать как в Android API можно узнать ширину панели с кнопками (назад, домой, окна)

163
Как равномерно растянуть элементы в StackPanel?

Как равномерно растянуть элементы в StackPanel?

В общем, есть такой StackPanel:

160
“Не отпускаются” клавиши

“Не отпускаются” клавиши

Открываю блокнот, нажимаю клавишу пробел, срабатывает комбинация ctrl+s и после этого, такое ощущение, будто эти клавиши нажаты остаются навсегда...

157