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的。