我可以編譯,但是當我運行我得到這個錯誤「forrtl:嚴重(40):遞歸I/O操作,單元-1,文件未知」如果我設置n = 29或更多......任何人都可以幫助我可能出錯了?謝謝。Fortran嚴重(40)錯誤...幫助?
PROGRAM SOLUTION
IMPLICIT NONE
! Variable Declaration
INTEGER :: i
REAL :: dt
DOUBLE PRECISION :: st(0:9)
DOUBLE PRECISION :: stmean(0:9)
DOUBLE PRECISION :: first_argument
DOUBLE PRECISION :: second_argument
DOUBLE PRECISION :: lci, uci, mean
REAL :: exp1, n
REAL :: r, segma
! Get inputs
WRITE(*,*) 'Please enter number of trials: '
READ(*,*) n
WRITE(*,*)
dt=1.0
segma=0.2
r=0.1
! For n Trials
st(0)=35.0
stmean(0)=35.0
mean = stmean(0)
PRINT *, 'For ', n ,' Trials'
PRINT *,' 1 ',st(0)
! Calculate results
DO i=0, n-2
first_argument = r-(1/2*(segma*segma))*dt
exp1 = -(1/2)*(i*i)
second_argument = segma*sqrt(dt)*((1/sqrt(2*3.1416))*exp(exp1))
st(i+1) = st(i) * exp(first_argument+second_argument)
IF(st(i+1)<=20) THEN
stmean(i+1) = 0.0
st(i+1) = st(i)
else
stmean(i+1) = st(i+1)
ENDIF
PRINT *,i+2,' ',stmean(i+1)
mean = mean+stmean(i+1)
END DO
! Output results
uci = mean+(1.96*(segma/sqrt(n)))
lci = mean-(1.96*(segma/sqrt(n)))
PRINT *,'95% Confidence Interval for ', n, ' trials is between ', lci, ' and ', uci
PRINT *,''
END PROGRAM解決方案
+1純粹的憐憫和同情 – 2010-06-09 14:34:58