50. 一个非纯函数 |
![]() ![]() |
REAL FUNCTION polluted(w, x, y)
REAL, INTENT(IN) ::燱
REAL, INTENT(IN)�::爔(10)
REAL, TARGET 牋牋:: Y(100)
INTEGER, SAVE :: last = 1
REAL, POINTER�:: z
INTEGER num_call
REAL, TARGET :: lookup
COMMON /GLOBAL/ num_call, lookup
INTERFACE
PURE SUBROUTINE bin_search(a, b, i)
REAL, INTENT(IN) 牋牋�:: a
REAL, INTENT(INOUT)牋�:: b(100)
INTEGER, INTENT(INOUT):: i
END SUBROUTINE bin_search
END INTERFACE
CALL bin_search(w,lookup, last)
z => y(last:last+9)
num_call = num_call + 1
polluted = SUM (x*z)
END FUNCTION polluted
Copyright: NPACT | ![]() ![]() |