# C++ acosh()

The acosh() function in C++ returns the arc hyperbolic cosine (inverse hyperbolic cosine) of a number in radians.

The acosh() function takes a single argument and returns the arc hyperbolic cosine of that value in radian.

The function is defined in <cmath> header file.

[Mathematics] cosh-1x = acosh(x) [In C++ Programming]

## acosh() prototype [As of C++ 11 standard]

double acosh(double x);
float acosh(float x);
long double acosh(long double x);
double acosh(T x); // For integral type

## acosh() Parameters

The acosh() function takes a single mandatory argument which is greater or equal to 1.

If the argument is less than 1, a domain error occurs.

## acosh() Return value

The acosh() function returns a value in the range [0, ∞].

If the argument passed to acosh() is less than 1, it returns NaN (not a number).

acosh() Return values
Parameter Return Value
x >= 1 [0, ∞]
x < 1 NaN

## Example 1: How acosh() function works in C++?

#include <iostream>
#include <cmath>

#define PI 3.141592654
using namespace std;

int main()
{
double x = 13.21, result;
result = acosh(x);

cout << "acosh(x) = " << result << " radian" << endl;

// result in degrees
cout << "acosh(x) = " << result*180/PI << " degree" << endl;

return 0;
}

When you run the program, the output will be:

acosh(x) = 187.511 degree

## Example 2: acosh() function with integral type

#include <iostream>
#include <cmath>

#define PI 3.141592654
using namespace std;

int main()
{
int x = 4;
double result;

result = acosh(x);
cout << "acosh(x) = " << result << " radian" << endl;

// result in degrees
cout << "acosh(x) = " << result*180/PI << " degree" << endl;

return 0;
}

When you run the program, the output will be: