C++ 표준 라이브러리(STL)의 asinh() 함수는 역쌍곡선 사인(inverse hyperbolic sine)을 계산하는 수학 함수입니다. 이 함수는 sinh(x)가 입력값과 같아지는 x, 즉 라디안(radian) 단위의 각도를 반환하며, 수학적으로 asinh(x) = ln(x + √(x² + 1))로 정의됩니다.
asinh() 함수는 <cmath> 헤더에 선언되어 있으며, 기본적인 호출 형태는 다음과 같습니다 −
asinh(value);
매개변수
역쌍곡선 사인을 구하고자 하는 실수 값을 전달합니다. 이 값은 음수, 양수, 0 모두 가능하며, 자료형은 double, float, long double 중 하나를 사용할 수 있습니다.
반환값
입력값에 대한 역쌍곡선 사인 값을 라디안 단위로 반환합니다.
그럼 실제 예제를 통해 함수의 동작 방식을 살펴보겠습니다 −
예제 1: 기본 사용법
#include <bits/stdc++.h>
using namespace std;
int main() {
double insinh = 75.0;
double value = asinh(insinh);
cout << "asinh(75.0) = " << value << " 라디안\n";
return 0;
}
출력
asinh(75.0) = 5.01068 라디안
asinh() 함수의 반환값은 라디안 단위입니다. 만약 도(degree) 단위가 필요하다면, 반환값에 (180 / 3.141592), 즉 180/π를 곱하여 변환할 수 있습니다.
예제 2: 라디안을 도(degree)로 변환하기
#include <bits/stdc++.h>
using namespace std;
int main() {
double insinh = 75.0;
double value = asinh(insinh);
cout << "asinh(75.0) = " << value << " 라디안\n";
cout << "도(degree) 단위로 변환한 값: " << (value * (180 / 3.141592));
return 0;
}
출력
asinh(75.0) = 5.01068 라디안 도(degree) 단위로 변환한 값: 287.091
참고로 C++에서는 asinh() 외에도 쌍곡선 함수인 sinh(), cosh(), tanh()와 그 역함수인 acosh(), atanh()를 함께 제공하므로, 필요에 따라 적절히 활용하면 됩니다.