私はfortranを使ってexp(x)/ sin(x)のテイラー級数展開を書こうとしましたが、 = 3、X = 1.0)、それらを手動で追加すると、結果は期待したものと一致しません。手で私は4.444 ..を計算し、プログラムで私は7.54113を見つけた。私のコードをチェックして、何かが間違っているかどうか教えてください。 http://www.wolframalpha.com/input/?i=e%5Ex%2Fsin%28x%29Fortranでのexp(x)/ sin(x)のテイラー級数の拡張
PROGRAM Taylor
IMPLICIT NONE
INTEGER ::Count1,Count2,N=3
REAL:: X=1.0,Sum=0.0
COMPLEX ::i=(0.0,0.1)
INTEGER:: FACT
DO Count1=1,N,1
DO Count2=0,N,1
Sum=Sum+EXP(i*X*(-1+2*Count1))*(X**Count2)/FACT(Count2)
END DO
END DO
PRINT*,Sum
END PROGRAM Taylor
INTEGER FUNCTION FACT(n)
IMPLICIT NONE
INTEGER, INTENT(IN) :: n
INTEGER :: i, Ans
Ans = 1
DO i = 1, n
Ans = Ans * i
END DO
FACT = Ans
END FUNCTION FACT
テーラー用語をExcelなどで記述してから、Fortranで書き直してみてください。これは実際にはFortranの問題ではありませんが、機能を拡張して拡張する方法を理解する上での問題です。 – Rook
複雑なまたは実数の大文字小文字のテイラー級数展開を計算しようとしていますか? – talonmies
'COMPLEX :: i =(0.0,0.1)'おっと? – steabert