跳轉到內容

DarkBASIC 程式設計/迴圈

來自華夏公益教科書

第 10 天

[編輯 | 編輯原始碼]

相信我,迴圈很有用,它們可以完成繁瑣的任務,而且易於使用。

以彩票程式為例

Dim lottery(100)
lottery(1) = 1
lottery(2) = 2
lottery(3) = 3
lottery(4) = 4
etc...
Print Lottery(1)
Print lottery(2)
Print Lottery(3)
etc...

以上方法適用於平方,以及沒有迴圈知識的人。

使用迴圈完成

`Let's image the dim command above is down here
for a = 1 to 100
     Print lottery(a)
next a

讀者提示:您無法列印“lottery(a)”因為它不存在,請改為以下程式碼

dim lottery(100) for a = 1 to 100 print a next a wait key


使用迴圈時,請記住縮排,這樣可以使程式更易於其他人閱讀。有了迴圈,我們終於可以擁有更高階的輸入,沒有變數的輸入,好吧,有一些變數。讓我們來看看一些迴圈。

Repeat/Until

Repeat
   `what the loop does here
until conditionmet

While/Endwhile

While conditionmet
   `What the loop does
endwhile

Do/Loop

do
    `task here
loop

請記住,退出迴圈的唯一方法是退出,這是不可取的;使用 exit 命令是最佳方法,或者使用 gosub 命令。在一些迴圈中,迴圈在滿足某個條件後結束,而在另一些迴圈中,在完成一項任務後結束。如果你認真聽講,你就應該知道我在說什麼。今天就到這裡,去吃飯、睡覺、散步,做任何事,明天回來吧!

第 11 天

[編輯 | 編輯原始碼]

這是高階輸入部分,如果我們想要一個系統鍵,我們可以輕鬆地使用 spacekey() 等命令。去看一看吧,它們是最容易理解的,找出如何在 DarkBASIC 中停用它們被按下的方法。對於其他鍵,基本上有兩種方法:scancode(value) 每個國家的鍵盤都不同,西班牙鍵盤與英國鍵盤不同,您必須找到一個值!或者您可以使用 ASCII 值,它有一個幽默的讀音(它被讀作 ass key:P)。在維基百科上找到 ASCII 的含義,只需在搜尋框中輸入它,就可以了。您可以在點選這裡前往維基百科找到維基百科,如果您只是好奇,因為我忘了,我相信它是美國資訊交換標準程式碼。我們將使用 ASCII,因為它對每臺計算機都相同,無需使用數值。

示例

`Loops are needed for input BTW
do
   if inkey$() = "charhere" then exit
loop

這是一個鍵的示例

do
  if inkey$() = "a" then print "Lowercase A"
  if inkey$() = "A" then Print "Uppercase A"
loop

請記住,在使用 inkey$() 時,A 與 a 不同。現在,這節課結束了,作為作業,找出 ASCII 的含義,並使用 inkey$() 進行實驗。

華夏公益教科書