2011-05-31 88 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;