2 VB程式概說
在程式設計中,變數是一在某一塊記憶體位置中所放的資料,而這個變數(資料)可能會因程式的執行過程,而發生改變。
如同數學中之: y=f(x),x為一自變數、y為應變數、f(x)為一函數。例如:
令 半徑為x、圓周率為pi之圓周長為:
y=f(x)=2*pi*x
很明顯的,若是x的值改變,y的值也會改變。
我們在寫程式時要清楚的告訴程式,誰是變數?又變數是何種資料型別(2-4)?這個步驟叫做宣告變數,其語法如下:
Dim 變數名稱 As 資料型別
如以計算圓周長為例,我們可以宣告x、y為:
Dim x As Single
Dim y As Single
宣告變數有些限制,請見p2-2
在程式的執行過程中不會被改變的稱為常數。同上例之圓周率pi。
我們可以在寫程式時告訴程式某個常數值為何,這個步驟叫做定義常數,其語法如下:
Const 常數名稱 As 資料型別=常數內容
如以計算圓周長為例,我們可以定義pi為:
Const pi As Single=3.1415
定義常數有幾項優點,請見p2-5
MsgBox
用以顯示一個訊息交談窗。
傳回變數 = MsgBox(訊息文字,訊息圖示及按鈕種類,標題文字,說明文字字串,說明檔代碼)
其中之按鈕種類,標題文字請參考p2-8
善用「自動完成」
請做出如右圖的結果
InputBox
用以顯示一個接受使用者輸入文字的訊息交談窗。
傳回變數 = InputBox(訊息文字,標題文字,預設字串,X座標,Y座標,說明文字字串,說明檔代碼)
請做出如右圖的結果
ex2_3 行號不影響順序、程式依行序執行、空格、不分大小寫、"文字 "、註解
數字類
資料類別 | 數字類 | 數字類 | 數字類 | 數字類 | 文字類 |
資料型別 | Integer(整數) | Long(長整數) | Single(單精準浮點數) | Double(雙精準浮點數) | String(字串) |
型別字元 | % | & | ! | # | N/A |
佔用記憶體 | 2Bytes | 4Bytes | 4Bytes | 8Bytes | 視所使用的字串長度而定 |
範圍 | -32768~32767 | -2147483648~2147483647 | -3.402823E38~3.402823E38 (註2) |
-1.79769373486232E308~ 1.79769373486232E308 |
任何字元(包含數字) |
說明 | 沒有小數部份的整數(註1)。 | 同Integer但可以有更大範圍的整數。 | 可以包含小數的數,但精準度有限。 | 同Single但可以有更大範圍的數。 | 僅做"文字"使用(註3)。 |
ex_p2-14_Integer與Long
ex_p2-17_Single與Double
ex_p2-21字串
註1.
若宣告為Integer,但使用者給的變數值含小數時,則以4捨6入,5以雙規則取整數。
即:
取整數前 | 取整數後 | |
a.b | a | if b<=4 |
a.b | a+1 | if b>=6 |
a.b | a | if b=5, and a=2n , n=0,1,2,3......。 |
a.b | a+1 | if b=5, and a=2n+1 , n=0,1,2,3......。 |
例如:
取整數前 | 取整數後 | |
4.4 | 4 | 小數位小於等於4,故捨去。 |
4.6 | 5 | 小數位大於等於6,故進位。 |
4.5 | 4 | 小數位等於5,因整數位為偶數,故小數位捨去。 |
5.5 | 6 | 小數位等於5,因整數位為奇數,故小數位進位。 |
註2.
E為科學記號表示法,E為10的指數,如1.034E3=1034
註3.
若將數字宣告成String則有可能會有計算錯誤的問題。