Sunaba

我的编程启蒙书就是日本平山尚写的《我的第一本编程书》。这本书主要教你的是编程的思路,因为书中介绍的语言是专为这本书准备的,而且并不能算是一门很实用的语言,但对于培养编程思路还是很有用的。

Sunaba这门语言可以用英语、中文或日语编程,在手机上也可以下载,不过只能使用日语。它通过操纵存储区来执行操作。大多数的存储区都很普通,功能仅限于存储数值(没法存储字符串!!!),而存储区[50004]、存储区[50005]、存储区[50006]、存储区[50007]这几个存储区则是用来判断键盘的,他们分别对应↑键,→键,←键和↓键。

除此之外,存储区[60000]到存储区[69999]则可以在编译器的绘制区进行绘制。在使用时可以像这样:存储区[60000] → 99。这一个语句的作用是:把数值99赋值给存储区[60000]。因为这个存储区很特殊,所以你这样做后,会看到绘制区的左上角出现了一个蓝色的小方块。

事实上,通过这种方式,我们甚至可以绘制出黑白或彩色的图片,所需要的只是一万行的代码。

同时,我们也可以画出一个方块,有两种方式可以做到:

第一种:

存储区[60000] → 99

存储区[60001] → 99

存储区[60002] → 99

存储区[60100] → 99

存储区[60101] → 99

存储区[60102] → 99

存储区[60200] → 99

存储区[60201] → 99

存储区[60202] → 99

这样虽然可以画出来,但是代码很多对不对?我们还可以换一种方式,更快捷的绘制:

存储区[1] → 0

只要 存储区[1]

存储区[0] → 0

只要 存储区[0]

存储区[60000 + 存储区[0] + (存储区[1] × 100)] → 999999

存储区[0] → 存储区[0] + 1

存储区[1] → 存储区[1] + 1

这样就可以进行绘制了。

在sunaba里,如果相当于if,而只要则相当于:

while 1:

if x == True:

~~~

if x == False:

break

也就是说,只要是在某个条件为真时,不断重复一段代码。如果你想实现死循环的话,只要像这样做就行:

只要 1 = 1

~~~

因为1是一个常量,1永远等于1(或者说1=1永远正确),所以~~~的部分将会永远运行。

在写代码的时候,如果想让代码简洁些,可以用函数的方法,假如我们创建一个绘制方块的函数,函数名叫方块的话,应该像下面这样:

方块() 是

存储区[1] → 0

只要 存储区[1]

存储区[0] → 0

只要 存储区[0]

存储区[60000 + 存储区[0] + (存储区[1] × 100)] → 999999

存储区[0] → 存储区[0] + 1

存储区[1] → 存储区[1] + 1

只要 1 = 1

方块()

这样就可以让主循环简洁许多。

我们在文章开头讲到了键盘存储区,键盘存储区有两个值,1和0。1代表按下,0代表没有按下。

所以,问题来了:你能通过刚刚我所讲的知识,写一个程序,只要按下↑键,→键,←键和↓键之中的一个键,就在一个任意的地方绘制方块吗?写好代码之后可以在留言区里回复我,我会告诉你sunaba的下载地址和一些sunaba的程序源代码作为奖励哦~~~

sunaba运行俄罗斯方块源代码

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180708G1DWEZ00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券