`DCMPLX` — 배정밀도 복소수로 변환

DCMPLX — 배정밀도 복소수로 변환

배정밀도 실수부와 허수부를 가지는 복소수를 만들고 싶을 때가 있어요. DCMPLX는 두 인자를 받아 배정밀도 복소수(COMPLEX(8))를 만들어 주는 내장 함수예요.

출처: gfortran — DCMPLX

본문

시그니처

RESULT = DCMPLX(X [, Y])

설명

DCMPLX(X [,Y])는 배정밀도 복소수를 반환해요. X는 실수부로 변환되고, Y가 있으면 허수부로 변환돼요. Y가 없으면 허수부는 0.0으로 설정돼요. X가 이미 복소수라면 Y를 함께 주면 안 돼요.

클래스

원소 함수(Elemental function)

인자

  • X — 타입이 INTEGER, REAL, COMPLEX 중 하나일 수 있어요.
  • Y — (XCOMPLEX가 아닐 때만 선택적) INTEGER 또는 REAL일 수 있어요.

반환값

반환값의 타입은 COMPLEX(8)이에요.

예제

program test_dcmplx
    integer :: i = 42
    real :: x = 3.14
    complex :: z
    z = cmplx(i, x)
    print *, dcmplx(i)
    print *, dcmplx(x)
    print *, dcmplx(z)
    print *, dcmplx(x,i)
end program test_dcmplx

인자를 한 개만 주면 허수부가 0이 되고, 두 개를 주면 첫 번째가 실수부, 두 번째가 허수부가 돼요. 예제 마지막처럼 정수와 실수를 섞어 써도 돼요.

표준

GNU 확장(GNU extension)