[求助]fortran利用泰勒级数求COS出错,大家帮分析分析
源代码:
IMPLICIT NONE
INTEGER::N=1
REAL::X,K=1.0,SUM=1.0
PRINT*,"输入X"
READ*,X
DO WHILE(ABS(K)>=1E-15)
K=(-1)*K*X*X/(N*(N+1))
N=N+2
SUM=SUM+K
END DO
PRINT*,SUM
END
当我输入的数很小时,结果正确,比如 3.14 但是当我输入20的时候,结果远多于1了,求各位朋友帮助分析下
IMPLICIT NONE
INTEGER::N=1
REAL::X,K=1.0,SUM=1.0
PRINT*,"输入X"
READ*,X
DO WHILE(ABS(K)>=1E-15)
K=(-1)*K*X*X/(N*(N+1))
N=N+2
SUM=SUM+K
END DO
PRINT*,SUM
END
当我输入的数很小时,结果正确,比如 3.14 但是当我输入20的时候,结果远多于1了,求各位朋友帮助分析下