В C tan (30) дает мне отрицательное значение! Почему?

я замечаю, что мой tan(float)

3 ответов


на C, tan и другие тригонометрические функции радианс как их аргументы, а не градусов. Вы можете конвертировать градусов to радианс:

tan( 30. * M_PI / 180. ) == 0.57735026918962576450914878050196

Это касательная вашего угла (30 радианов.) если вы ищете тангенс 30 градусов, вы должны сначала преобразовать свой угол в радианы.


Я думаю, что в C Функция tan требует, чтобы вы вводили радианы в качестве аргумента, а не фактическое значение степени.

Итак, для Tan 30 вам придется преобразовать ваши 30 градусов в Радиан. Имейте в виду, что 360 градусов-это 2*Pi Радиан, поэтому 30 degress будет (1\6 * Pi) - й Радиан.

Итак, tan (1\6 * Pi) даст вам правильный ответ. где Pi-3.142