大家好,请教的问题如下:
{e}^{x}=1+x+\frac{{x}^{2}}{2!}+\frac{{x}^{3}}{3!}+\frac{{x}^{4}}{4!}+...
计算上面的问题,我写的代码如下:
[Fortran] 纯文本查看 复制代码
PROGRAM MAIN
IMPLICIT NONE
REAL X,S
INTEGER*8 N
INTEGER I
INTEGER,EXTERNAL :: FACT
READ(*,*) N
READ(*,*) X
S=0
DO 10 I=2,N
S=S+X**I/FACT(I)
WRITE(*,*) I,FACT(I),X**I,
10 CONTINUE
S=S+X+1
WRITE(*,*) S
END
RECURSIVE INTEGER FUNCTION FACT(N) RESULT(ANS)
IMPLICIT NONE
INTEGER,INTENT(IN) :: N
IF(N>1) THEN
ANS=N*FACT(N-1)
RETURN
END IF
ANS=1
RETURN
END
出现的问题是:计算中fact(阶乘项)的值出现溢出的情况,这种问题如何解决呢? |