0

私は平方根を解く必要があり、その結果複素数を取得するFortranの作成に取り組んでいますが、Fortranはそれを出力しないか、別の変数に渡します。それは(NaN、0.000)を与えます。

これは、私が取り組んでいる実際のコードで発生している問題を表すダミーコードです。皆さんが役立つ情報を教えていただければと思います。ありがとうございました。

   program test
       IMPLICIT NONE
       COMPLEX X
       REAL a, b, c
       a = 1
       b = 1
       c = 1
       X = sqrt(b - 4*a*c)
       print *, REAL(X), ' - j',-AIMAG(X)
   end program test
4

1 に答える 1

2

a、b、cはすべて実数であるため、割り当ての右辺の式は実数演算で計算されます。左側の複素変数に割り当てても、それは変わりません。計算を複素数値として実行する場合、最も簡単な方法は、a、b、およびcを複素数値として宣言することです。

于 2013-01-03T18:54:55.317 に答える