常數,constant,其實不應該翻譯成常數,因為 constant 不一定是數字。常數的意義,是不會變動的數值、事物、因素(至少是假設不會變動)...等。例如物理學上的真空光速、普朗克常數、萬有引力常數、玻爾茲曼常數及阿伏伽德羅常數...等等。
同理,變數就是會變動的東西,真實世界中,會變的事物似乎比較多: 每天到達辦公室的時間、早晚的氣溫、東西的價格、老師今天會教些什麼、媽媽今晚煮什麼菜、爸爸這周末會帶全家到哪裡去玩...等,抽象一點的,甚至自己今天與明天的長相、自己這一刻與下一刻的想法...等,數之不盡。
程式設計反映真實世界,所以大部分我們寫的程式裡,都會有或多或少的變數,常數則比較少見。
在程式語言中,常數與變數都是資料,自然也適用資料型態的概念,所以,粗分而言,變數有數字、文字、日期。
2013年3月11日 星期一
用 MsgBox 練習迴圈
假設想寫個程式,用 MsgBox 印出從 1~9。依照目前學到的指令,是這樣寫:
Sub msgbox_1_9()
MsgBox 1
MsgBox 2
MsgBox 3
MsgBox 4
MsgBox 5
MsgBox 6
MsgBox 7
MsgBox 8
MsgBox 9
End Sub
Sub msgbox_1_9()
MsgBox 1
MsgBox 2
MsgBox 3
MsgBox 4
MsgBox 5
MsgBox 6
MsgBox 7
MsgBox 8
MsgBox 9
End Sub
那改一下,從 1 印到 99...。要寫 99 行哩,很沒效率吧! 投入的工,比獲得的結果還少;投入的工如此辛苦(雖然可以用複製貼上),得到的結果如此微不足道。還不如不寫。
手動複製,不如自動複製,如果能讓小叮噹(哆啦A夢)拿出一種 "程式重複器",可以重複上述看起來就很重複的行為,不就可以節省力氣嗎? 有的,這個重複器,就是迴圈(loop):
Sub msgbox_1_9_using_loop()
For i = 1 To 9
<這裡按下 2 次 Tab>MsgBox i
Next
End Sub
用 Tab 讓程式易讀
Sub test_1()
<這裡按下 Tab> (再寫你的程式碼)
<這裡按下 Tab> (再寫你的程式碼)
<這裡按下 Tab> (再寫你的程式碼)
End Sub
程式不只是給電腦執行的,也是給人閱讀的。畢竟,程式難免會修改。不改的程式不常見,因為不改往往等於沒創新。沒創新的程式雖然可能還是有用,卻可能沒多少人想用。
<這裡按下 Tab> (再寫你的程式碼)
<這裡按下 Tab> (再寫你的程式碼)
<這裡按下 Tab> (再寫你的程式碼)
End Sub
程式不只是給電腦執行的,也是給人閱讀的。畢竟,程式難免會修改。不改的程式不常見,因為不改往往等於沒創新。沒創新的程式雖然可能還是有用,卻可能沒多少人想用。
訂閱:
意見 (Atom)