作者sunnywei (魏桑)
看板Fortran
標題[問題] 一次三種錯誤 看不太懂...
時間Fri Feb 3 18:31:12 2012
各位前輩好 我想請問一下
我的程式 出現以下三個錯誤
但是 都是針對同一個式子
那是一個計算式
Error: An arithmetic or LOGICAL type is required in this context
Error: This binary operation is invalid for this data type.
Error: The assignment operation or the binary expression operation is invalid
for the data types of the two operands.
錯誤:算術或邏輯類型,需要在這方面
錯誤:這個二進制操作這個數據類型是無效的。
錯誤:賦值操作或二進制表達式的操作是無效的兩個操作數的數據類型。
這是我用GOOGLE翻譯的中文
如果我把它宣告為 倍精度 後面再加上一個逗號 就會變成
Error: Syntax error, found END-OF-STATEMENT when expecting one of: %FILL
<IDENTIFIER>
!!!有大大提醒 所以小的趕快付上 程式碼
open (unit=20,file='time.txt')
read(20,*) td
read(20,*) tr
read(20,*) ts
read(20,*) tb
read(20,*) vm
read(20,*) epsilon
read(20,*) b
read(20,*) c
read(20,*) ar
do 6500 k=1,ntt
space=ts/ntt
relt=k*space
if (time .le. tb) then
weigt(k)=(2*Vm/td)*(relt)*(1-(relt/2.*td))
else if ((relt .ge. tb) .and. (relt .le. tr)) then
weigt(k)=b/sqrt(relt-epsilon)
else if ((relt .le. ts) .and. (relt .gt. tr)) then
weigt(k)=c-ar*(relt-tr)
end if
主要問題 出現在 最後一行的
weigt(k)=c-ar*(relt-tr)
!!!!
請問大大們 我該怎麼做 才能把錯誤消掉阿 查不到啊!! 可以煩請幫我看看嗎..
或是有遇過相同問題 最後解決的
--
j&= y+ y* jv+ yy-v v &
wE!" j17$T 7MPC NU$E- Ej&v-
O*K^ yHH:Ovm+ UMMK BMNTO: H1="7'
jO&OH: "OH7"E~ U0H1 BB71` jCf'U:
vM1H1 jB-j1 wHhHh*-/$B]B- BKJUK
^HI'OH j""^N1 "OHOK~ H$H"Da jP'N ^ 這次,是我的真心話...
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.115.62.44
※ 編輯: sunnywei 來自: 140.115.62.44 (02/03 18:55)
1F:推 terryys:ar是什麼? 02/03 19:06
2F:→ sunnywei:就只是一個 參數而已 用INPUT的方式 讀的一個參數 02/03 19:20
3F:推 terryys:那c呢?可以把變數宣告都寫出來嗎? 02/03 20:00
其實我也做甚麼宣告 就只有讀值而已
5.305165024714408E-002 td
0.250000000000000 tr
0.375000000000000 ts
9.961165024710450E-002 tb
0.371960221459961 vm
9.613954976412804E-002 epsilon
4.115322526508360E-002 b
0.104915674725249 c
0.839325397801995 ar
以上在附上我的INPUT檔
※ 編輯: sunnywei 來自: 140.115.62.44 (02/03 20:17)
4F:推 terryys:我的意思是real :: td之類的 02/03 21:21
5F:→ sunnywei:我都沒做宣告.... 02/03 21:26
6F:→ sunnywei:因為我是拿別人的程式 可是他連 program XX 都沒有 02/03 21:26
7F:推 terryys:那你試試把用到的變數都宣告一下看看 02/03 23:14