The cosh() is an inbuilt function in C++ STL which returns the hyperbolic cosine of an angle given in radians. Syntax :
cosh(data_type x)
Parameter :The function accepts one mandatory parameter x which specifies the hyperbolic angle in radian. The parameter can be of double, float or long double datatype.
Return Value: The function returns the hyperbolic cosine of the argument. If the magnitude of the result is too large to be represented by a value of the return type, the function returns inf. Below programs illustrate the above method:
Time Complexity: O(1)
Auxiliary Space: O(1)
Program 1:
// CPP program to demonstrate the // cosh() function #include <bits/stdc++.h> using namespace std;
int main()
{ double x = 4.1, result;
result = cosh (x);
cout << "cosh(4.1) = " << result << endl;
// x in Degrees
double xDegrees = 90;
x = xDegrees * 3.14159 / 180;
result = cosh (x);
cout << "cosh(90 degrees) = " << result << endl;
return 0;
} |
cosh(4.1) = 30.1784 cosh(90 degrees) = 2.50918
Program 2:
// CPP program to demonstrate the // cosh() function #include <bits/stdc++.h> using namespace std;
int main()
{ int x = -4;
double result;
result = cosh (x);
cout << "cosh(-4) = " << result << endl;
// x in Degrees
double xDegrees = 90;
x = xDegrees * 3.14159 / 180;
result = cosh (x);
cout << "cosh(90 degrees) = " << result << endl;
return 0;
} |
cosh(-4) = 27.3082 cosh(90 degrees) = 1.54308
Errors and Exceptions: The function returns no matching function for call to error when a string or character is passed as an argument.
Program 3:
// CPP program to demonstrate the // cosh() function when string passed #include <bits/stdc++.h> using namespace std;
int main()
{ string x = "gfg" ;
double result;
result = cosh (x);
cout << "cosh(" gfg ") = " << result << endl;
return 0;
} |
Output:
prog.cpp:14:20: error: no matching function for call to 'cosh(std::__cxx11::string&)' result = cosh(x);
Program 4: When argument is too large.
// CPP program to demonstrate the cosh() // function #include <bits/stdc++.h> using namespace std;
int main()
{ double x = 3000.0, result;
result = cosh (x);
cout << "cosh(3000.0) = " << result << endl;
return 0;
} |
cosh(3000.0) = inf