C++의 abs() 함수는 복소수의 절댓값(absolute value)을 계산하는 데 사용됩니다. 복소수의 절댓값은 크기(modulus)라고도 불리며, 복소 평면에서 해당 수가 원점으로부터 얼마나 떨어져 있는지를 나타내는 거리 값입니다.
복소수 절댓값 공식
복소수 a+bi의 절댓값은 다음과 같은 수식으로 구할 수 있습니다.
|a+bi| = √(a² + b²)
즉, 실수부와 허수부를 각각 제곱하여 더한 뒤 제곱근을 취하면 됩니다. C++에서는 이 계산을 직접 구현할 필요 없이 abs() 함수가 결과를 자동으로 반환해 줍니다.
abs() 함수의 헤더 파일
복소수용 abs() 함수는 표준 라이브러리인 <complex> 헤더에 정의되어 있으므로, 사용 전에 반드시 해당 헤더를 포함(include)해야 합니다.
C++ 복소수 abs() 함수 예제 코드
다음은 abs() 함수를 사용하여 복소수 13+5i의 절댓값을 구하는 프로그램입니다.
#include <iostream>
#include <complex>
using namespace std;
int main () {
float a = 13.0, b = 5.0;
complex<double> complexnumber(a, b);
cout << "The absolute value of " << a << "+" << b << "i" << " is: ";
cout << abs(complexnumber) << endl;
return 0;
}실행 결과
The absolute value of 13+5i is: 13.9284
코드 설명
위 예제에서는 실수부가 13.0이고 허수부가 5.0인 복소수를 생성한 후, abs() 함수로 절댓값을 계산했습니다. 공식에 대입하면 √(13² + 5²) = √(169 + 25) = √194 ≈ 13.9284가 되어 출력 결과와 일치하는 것을 확인할 수 있습니다.