평균 계산

몇 개 숫자의 평균을 구할지 가변적 -> Assumed-Shape Array 사용

외부 함수 이용

외부 함수에 대한 Interface 정의

PROGRAM Main

IMPLICIT NONE

REAL, DIMENSION(:), ALLOCATABLE :: Item
INTEGER :: NumItems

INTERFACE
REAL FUNCTION Mean(X)
REAL X(:)
END FUNCTION Mean
END INTERFACE

WRITE (*,'(1X, A)', ADVANCE = "NO"), "How many numbers are in the data set? "
READ *, NumItems
ALLOCATE(Item(NumItems))

PRINT *, "Enter the", NumItems, " real numbers:"
READ *, Item

PRINT '(1X, "Mean of the ", I3, " Numbers is ", F6.2)', NumItems, Mean(Item)

END PROGRAM Main

FUNCTION Mean(X)

IMPLICIT NONE

REAL :: Mean
REAL, DIMENSION(:), INTENT(IN) :: X

Mean = SUM(X) / REAL(SIZE(X))
END FUNCTION Mean

위 소스를 08_04_Mean.f95로 저장

소스 컴파일 및 프로그램 테스트



+ Recent posts