[問題] 如何read複數?

看板Fortran作者 (小柯)時間13年前 (2011/03/29 17:26), 編輯推噓1(101)
留言2則, 2人參與, 最新討論串1/1
因為複數有實部和虛部 所以我想說直接read應該不太可行 然後我嘗試了下面這個做法 program prodela implicit none complex::u_11,u_12,u_21,u_22 real::a,b,c,d u_11=cmplx(a,b) u_12=cmplx(c,d) u_22=conjg(u_11) u_21=conjg(u_12) read(*,*) a,b read(*,*) c,d write(*,*) u_11,u_12,u_21,u_22 pause stop end 沒有錯誤訊息 但是我read a,b,c,d 進去後 write出來都是(0.000000,0.000000) 總之不是(a,b)和(c,d) 請問我是錯在哪裡呢~~謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.116.91.242 ※ 編輯: kermomo 來自: 140.116.91.242 (03/29 17:27)

03/29 17:34, , 1F
先read,再存到複數變數。
03/29 17:34, 1F

03/29 18:56, , 2F
複數也可以直接讀, 例如(1.0, 2.0)代表1+2i
03/29 18:56, 2F
文章代碼(AID): #1DaQN5m5 (Fortran)
文章代碼(AID): #1DaQN5m5 (Fortran)