跳转到内容

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$() 进行实验。

华夏公益教科书