`HUGE` — 그 종류가 다룰 수 있는 가장 큰 수

HUGE — 그 종류가 다룰 수 있는 가장 큰 수

정수나 실수의 표현 범위를 넘지 않는 선에서 "이 타입이 담을 수 있는 최댓값"이 필요할 때가 있어요. HUGE는 타입의 표현 모델에서 무한대가 아닌 가장 큰 수를 돌려주는 내장 함수예요.

출처: HUGE (The GNU Fortran Compiler)

본문

시놉시스(Synopsis):

RESULT = HUGE(X)

설명(Description): HUGE(X)X의 타입이 표현하는 모델에서 무한대가 아닌 가장 큰 수를 돌려줘요. 정수라면 그 정밀도에서의 최댓값, 실수라면 그 실수 형식의 최댓값을 뜻해요.

종류(Class): 조회(inquiry) 함수

인자(Arguments):

인자 설명
X REAL, INTEGER 또는 UNSIGNED 타입이어야 해요.

반환값(Return value): 반환값은 X와 같은 타입·같은 종류(kind)예요.

예제(Example):

program test_huge_tiny
  print *, huge(0), huge(0.0), huge(0.0d0)
  print *, tiny(0.0), tiny(0.0d0)
end program test_huge_tiny

huge(0)은 기본 정수의 최댓값을, huge(0.0)huge(0.0d0)은 각각 단정도·배정도 실수의 최댓값을 보여줘요. tiny는 반대로 그 형식에서 정규화된 가장 작은 양수를 돌려주죠.

표준(Standard): Fortran 90 이후. UNSIGNED에 대해서는 확장이에요(Unsigned integers 참고).

더 알아보기

  • 반대 방향으로, 그 형식에서 가장 작은 정규 양수는 TINY가 돌려줘요.
  • HUGE는 컴파일 타임에 결정되는 조회 함수라 런타임 계산이 없어요. 반복문 상한을 계산할 때 같은 값으로 계속 쓰기 좋아요.
  • 정수 표현 범위를 다룰 때는 RANGE 함수도 함께 보면 도움이 돼요.