2011-05-31 38 views
1

我有一个遗留代码做数学计算。据报道,它是用QBasic编写的,并且在VB6下成功运行。我计划将代码写入更新的语言/平台。为此,我必须首先反向工作,并从现有代码中提出详细的算法。什么是#和:用于Qbasic?

的问题是我无法理解的几行语法:

Dim a(1 to 200) as Double 
Dim b as Double 
Dim f(1 to 200) as Double 
Dim g(1 to 200) as Double 

For i = 1 to N 
a(i) = b: a(i+N) = c 
f(i) = 1#: g(i) = 0# 
f(i+N) = 0#: g(i+N) = 1# 
Next i 

根据我VB5像9年前的工作,我猜测,A,F和G双数组索引从1到200.然而,我完全失去了这个使用#和:一起在for循环体内。

+0

我不知道是否应该不是唯一的非恒定的右手两侧令人担忧的是'B'和'C',这是不在任何地方初始化(因此都是0)。 – Blindy 2011-05-31 20:03:48

+0

The:符号分隔基本语句。 – eoredson 2016-08-27 04:26:18

回答

4

:是行连续字符,它允许您在同一行上链接多个语句。 a(i) = b: a(i+N) = c相当于:

a(i)=b 
a(i+N)=c 

#是一种类型说明符。它指定它所遵循的数字应被视为双倍数。

+0

非常感谢Blindy和sidran32! – 2011-05-31 19:44:55

+0

请务必投票回答有用的答案,并将其中的一个标记为解决方案。谢谢,不客气。 :) – 2011-05-31 20:00:59

2

我还没有在QBasic中编程一段时间,但我在高中做了大量工作。 #符号表示特定的数据类型。它将RHS值指定为具有双精度的浮点数(类似于C中的1.0f使1.0成为单精度浮点数)。冒号符号类似于C中的分号,它在其中分隔不同的命令。例如:

a(i) = b: a(i+N) = c 

,在C:

a[i] = b; a[i+N] = c;