Variable 變數(上)

什麼是variable?

到了這裡我們已經學習過9成的block,然而下面工作列中棗紅色的variable和綠色的functions我們從來沒有講解過,原因是它們的使用先需要以了解所有output和input的用法為提前。

Varible(變數)是「會改變的數字」的意思,例如你每天上班的路線是Constant(故定)的,但每天的天氣就可能不一樣,那麼天氣就是那個varible。

Varible block在編程中是一個容器,用來裝著不斷改變的data。

你可以想像成一隻杯子,裡面的水是不故定的,可以增加減少,但杯子還是那隻杯子。

相信大家覺得十分抽象吧,讓我們來做一次吧。

為何要使用variable?

有人可能覺得,我們直接輸入數字不是更方便嗎?是正確的,但這只限於數量很少的時候。

例子:

做一個counter閃燈,按第一下按鈕它閃一下,按第二下閃二下,按第三下閃下...

就這個例子來說,當然你可以分開幾十次來寫,由Shine block 1次寫到20次,但再之後呢?我們不可能一直寫下去吧。

一開始Variable列是完全空白的,我們需要自己來製造一個。

按下create a variable,我們可以看到Name variable、Select variable type、Set default value三個選項。

  • 首先是改名,這並沒有什麼特別,按照自己喜好改名即可。要注意我們有機會不只設定1個variable,儘量改一些不會弄錯的名字。
  • 然後是type,看圖示你便應該知道大概是什麼意思,就是可以放進不同的option block之中,我們大多情況都會使用圓形。
  • 最後是default value,即是起始的值是多少,我們通常會設定成0。

創建完成後下方工作列將會多了數個block。我們只要用原來的編程再加入它們便可。

當要做到這類counter的效果,我們使會設用change variable block,以數學來解釋的話就類似我們的N+1,這應該很好理解。

這裡的意思是當按下按鈕時,variable就會增加1,我們一開始設定的default value是0,即是我們按下第1次就會+1,然後按第2次就會再+1變成2。

大家記得一開始作的類比嗎,是不是就像我們不停加水進杯子裡面呢?但問題是,我們的杯子在哪呢?

我們平常設定閃多少次只是簡單地打出數字,這次我們直接把「杯子」拉進去time之前。

這裡我們不需要再手動輸入閃動多少次,而是交由variable來計算。

這次我們做了單個variable的示範,但其實variable可以限定很多個。你之前學習options block時相信會發現一些加減乘除的blocks,當時你應該不知道有何用,其實它們就是用來配合variable的。