作者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