평균 계산
몇 개 숫자의 평균을 구할지 가변적 -> 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로 저장
소스 컴파일 및 프로그램 테스트
'Programming > Fortran' 카테고리의 다른 글
평균 이상의 고장 시간 출력(파일의 행수를 알아내기) (0) | 2008.09.17 |
---|---|
배열 스왑(자동 할당 배열) (1) | 2008.09.17 |
평균 계산(함수의 인자로 배열 사용) (0) | 2008.09.16 |
평균이상의 고장 시간 출력(allocatable array 이용) (0) | 2008.09.16 |
평균 이상의 고장 시간 출력(배열 이용) (0) | 2008.09.16 |