我正在将一个非常旧的GW-BASIC程序翻译成JavaScript,我遇到了一段让我感到困惑的语法。注意(再一次):完全不是我的代码,并且变量名都是疯狂的,这就是为什么我首先要移植它。
1380 Z = 1
1390 RATIO = FCO2 /(1-FCO2-10^REFFO2)
1400 AA =(1 - 2*RATIO*(100 / MIXRATIO - 1))/(1 + 2*(100 / MIXRATIO - 1))
1410 PART = LOG(1 - AA)- LOG(100 / MIXRATIO - 1)
1420 FOR I = 1 TO - 1 STEP -2
1430 H = I
1440 W = T + H
1450 GG = 62.110326# - .02144446#*W + 4.720326E-07*(W^ 2)+(- 4.5574288#)*(10^(- 12))*(W^ 3)- 7.343018200000001#*(10^(- 15))*(W^ 4)
1460 KK = EXP(- GG /(R*(W + 273.18)))
1470 Q(Z)= KK
1480 Z = Z + 1
1490 NEXT I
1500 NEWFO21 = LOG(10)*.5*(LOG(Q(1))+ PART):NEWFO22 = LOG(10)*.5*(LOG(Q(2))+ PART)
1510 DELEMFDELT =(FN EMF (TREF + 1,NEWFO21) - FN EMF (TREF - 1, NEWFO22))/2
1520 RETURN问号是1470: Q(Z) = KK行。在前面的程序中,Q被定义为是/否输入变量,所以我没有必要在其中放入一个浮点数。在前面的程序中没有定义Q()函数,在GW-BASIC中也找不到对Q()函数的引用。
有什么帮助吗?
发布于 2013-01-25 00:33:18
Q和Q$是独立的变量。任何带有$的内容都是字符串变量。Q(Z)是一个数字数组。
1和2字符的名称很常见,因为在Basic的早期版本中,变量名称被限制为最多2个字符。
发布于 2013-01-26 09:58:13
正如XPDA提到的,任何以$为后缀的变量名都是一个字符串。我在几年前写了一些GW-BASIC,谢天谢地,我仍然有很多旧的文档打包在编译器中。我已经上传了我存档的CHM的副本,你可能会在里面找到一些有用的信息。http://www.mediafire.com/?3h9z133ok8wx1l9
https://stackoverflow.com/questions/14506144
复制相似问题