在C/C++  sin 的参数与我们平常数学三角函数理解的不一样.

在C语言中 sin 的参数是 弧度,而不是角度. 所有我们计算一个角度的sin 值时,应先转成弧度值.

弧度 =  角度 * 3.1415926 / 180.0

例如 :
 

int angle = 30;                   // 角度
sin(angle * 3.1415926 / 180.0);   // 获得 30度对应的 sin 值 0.5

cos 也一样;

int angle = 120;                // 角度值
cos(angle * 3.1415926 / 180.0)  // 120 度的 cos 值 -0.5

至于 反函数 acos 和 asin 的用法

它们的参数 是 正常角度计算后的 sin 值或 cos 值.

返回 弧度制的角度, 应该转换为角度值得值.

角度值 = 弧度值 * 180 / 3.1415926

例如:

int angle = 120;                               // 角度
float cosr = cos(angle * 3.1415926 / 180.0)    // 120 度的 cos 值 -0.5

acos(cosr) * 180 / 3.1415926;                  // 计算返回 角度值 应是120                

记得添加头文件 #include <math.h>

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐