- 給孩子的計算思維書:圖形化編程及數學素養課(進階篇)
- 昍爸
- 619字
- 2023-10-25 20:17:38
1.3 編程實現:布局
下面,我們就用編程來實現這個吉卜賽讀心術小游戲。
在程序里,我們繪制了一張1~100的表格,以其為背景。

我們創建3個角色:水晶球、神秘符號、再來一次。
我們為神秘符號角色創建了6個造型,對應6個不同的神秘符號。我們為神秘符號角色自定義一個名為“布局”的自制積木,其作用是在10×10的方格(不包含序號格)中擺上不同的圖案。具體地,我們首先選定一個單擊水晶球時顯示的圖案,然后我們在9的倍數的位置放上這個選定的圖案,而在不是9的倍數的位置放一個隨機選擇的圖案。“當小綠旗被點擊”或接收到“再來一次”消息時,都調用“布局”積木,重新布局。

每次重新布局時,我們都要重新選定最后在水晶球中顯示的神秘符號。我們創建變量“選中造型編號”,用于存放被選中的神秘符號的造型編號。我們可以通過下面的代碼,將“選中造型編號”設定為1~6的一個隨機的造型編號。這樣,每次重新玩的時候,最后水晶球出現的神秘符號大概率是不同的。

為了給這100個格子填上不同的神秘符號,我們需要雙重循環。我們定義兩個變量“行”和“列”來控制具體的位置。循環程序的框架如下:每次一行填完后,都將角色移動到下一行的開始(將x坐標設為每行最左邊的坐標,y坐標向下移動25到下一行)。

在循環體內部,我們根據當前的行數和列數,計算出當前位置對應的1~100的數為:(行-1)×10+列。如果這個數是9的倍數,那么就將該位置的符號設定為預先選中的造型,否則,就設定為一個隨機的造型。

布局積木的完整定義如下。
