c++ - atan(-M_PI_2) 不返回 -90 º

标签 c++ math

我在计算 cpp 中的 atan 时遇到问题。 M_PI 已经声明为 3.14159....

我的代码是:

double distanceNormalized = 1;// set constant con check value
double angle = atan(distanceNormalized * (-M_PI_2)); // atan(-PI/2) must be -1 in rad

stringstream ss;
ss  << " Angle: " << angle*180/M_PI;
cout << ss << endl;

但是在日志中我得到:

Angle: -57.5184

引用说admit [-pi/2,+pi/2] 弧度。 这是怎么回事?

最佳答案

您得到了正确的输出。

-57.5184 度等于 -1 rad 如果您假设 π = 3.14angle 这里实际上是 -1 rad。您通过将它乘以 180 再除以 π 将其转换为度数。

关于c++ - atan(-M_PI_2) 不返回 -90 º,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15474988/

相关文章:

c++ - 声明包含模板的结构的链接列表

c++ - 为什么 fwrite 向我抛出访问冲突?

c++ - 根据这些对象的属性值对指向对象的指针 vector 进行排序

c++ - 生成加起来等于某个数字的所有唯一数字组合

c++ - 从c++中的外部点到cardinalspline样条曲线的最短距离

java - 如何为 Android ndk 准备 .cpp 文件来构建它们?

c++ - 在 g++ 中链接文件

matlab - 两条相交线之间的像素

math - float 学坏了吗?

c - 如何通过 12 的幂来提高 double 值?