C++ Math atan2
The function finds the inverse tangent of a coordinate.
Suppose the coordinate is (x,y) :
Syntax
Suppose the coordinate is (x,y). Syntax would be:
Example
float atan2(float y, float x);
double atan2(double y, double x);
long double atan2(long double y, long double x);
Promoted atan2(Arithmetic1 y, Arithmetic x );
Parameter
y : It represents the y-coordinate value.
x : It represents the x-coordinate value.
Return value
It returns the value in the range[-?, ?] and if the values of both x and y are zero then it returns zero value.
- If any argument is of integral type, it is cast to double.
- If any argument is of long double type, it is cast to long double.
Example 1
Let's see a simple example when both x and y are zero.
Example
#include <iostream>
#include<math.h>
using namespace std;
int main()
{
int x=0;
int y=0;
cout<<"Value of tan(y/x) is : "<<tan(y/x)<<'\n';
std::cout << "Value of tan-1(y/x) is : " <<atan2(y,x)<< std::endl;
return 0;
}
Output:
Output
Value of tan(y/x) is : 0
Value of tan-1(y/x) is : 0
In this example, atan2 calculates the inverse tangent when both 'x' and 'y' are zero.
Example 2
Let's see a simple example when both 'x' and 'y' are of different type.
Example
#include <iostream>
#include<math.h>
using namespace std;
int main()
{
int x=6;
float y=7.8;
cout<<"Value of tan(y/x) is : "<<tan(y/x)<<'\n';
std::cout << "Value of tan-1(y/x) is : " <<atan2(y,x)<< std::endl;
return 0;
}
Output:
Output
Value of tan(y/x) is : 3.6021
Value of tan1(y/x) is : 0.915101
In this example, atan2 function finds the inverse of a tangent when x is of integer type and y is of float type.