C++ STL 中的 atan2() 函数


atan2() 函数以 y 和 x 的形式返回坐标的反正切值。其中 y 和 x 分别是 y 和 x 坐标的值。它是一个 C++ STL 中的内置函数。

atan2() 函数的语法如下所示。

atan2(dataType var1, dataType var2)

从语法中可以看到,函数 atan2() 接受两个 float、double 或 long double 数据类型参数 var1 和 var2,它们分别是 y 点和 x 点。

atan2() 返回的值范围为 -pi 到 pi,它是 (x,y) 与正 x 轴之间的角度。

下面是一个演示 C++ 中 atan2() 的程序。

范例

 实时演示

#include <iostream>
#include <cmath>
using namespace std;
int main() {
   double y = 10, x = 5, ans;
   ans = atan2(y,x);
   cout << "atan2("<< y <<"/"<< x <<") = " << ans << endl;
   return 0;
}

输出

atan2(10/5) = 1.10715

在上述程序中,首先初始化变量 y 和 x。然后使用 atan2() 求 y 和 x 的反正切值并存储在 ans 中。最后,显示 ans 的值。以下代码段演示了此过程。

double y = 10, x = 5, ans;
ans = atan2(y,x);
cout << "atan2("<< y <<"/"<< x <<") = " << ans << endl;

atan2() 函数获得的结果可以转换为度数并显示。下面是一个演示它的程序。

范例

 实时演示

#include <iostream>
#include <cmath>
using namespace std;
int main() {
   double y = 10, x = 5, ans;
   ans = atan2(y,x);
   ans = ans*180/3.14159;
   cout << "atan2("<< y <<"/"<< x <<") = " << ans << endl;
   return 0;
}

输出

atan2(10/5) = 63.435

在上述程序中,使用 atan2() 获得了 y 和 x 的反正切值。然后将此值转换为度数。最后,显示了输出。以下代码段演示了此过程。

double y = 10, x = 5, ans;
ans = atan2(y,x);
ans = ans*180/3.14159;
cout << "atan2("<< y <<"/"<< x <<") = " << ans << endl;

更新于:2020 年 6 月 24 日

289 次浏览

启动你的职业生涯

完成课程获取认证

开始学习
广告