1.ข้อมูล (Data) และตัวแปร (Variables)

ข้อมูล และตัวแปร

1. ข้อมูล Data


โปรแกรมคอมพิวเตอร์ส่วนมากเกี่ยวข้องกับข้อมูลแบบต่างๆ ข้อมูลที่ใช้ใน Visual Basic มีอยู่หลายแบบ ในเบื้องต้นแบ่งได้เป็น
                                1. ข้อมูลแบบตัวเลข (
Numeric
)
                                2. ข้อมูลแบบตัวอักษร (
Character
)
                                3. ข้อมูลแบบบูลีน (
Boolean
)
                                4. ข้อมูลแบบวันที่ (
Date
)
                                5. ข้อมูลแบบวัตถุ (
Object
)
                1. ข้อมูลแบบตัวเลข (
Numeric ) หมายถึง ข้อมูลที่มีค่าเป็นตัวเลขจำแนกได้เป็นแบบเลขจำนวนเต็ม (Integral Numeric Types
)
                   1.1 ข้อมูลแบบเลขจำนวนเต็ม แบ่งได้เป็น
                                1) เลขจำนวนเต็มขนาดเล็ก ได้แก่
                                              
— แบบ SBypte
                                              
— แบบ
Short
                                2
) เลขจำนวนเต็มขนาดใหญ่ ได้แก่
                                              
— แบบ Integer
                                              
—
แบบ Long
                                              
— แบบ
Decimal (เมื่อไม่ใช้จุดทศนิยม)
                                3) เลขจำนวนเต็มที่ไม่มีค่าเป็นลบ (
Unsigned Integers
)
                                              
— แบบ Byte
                                              
— แบบ
UShort
                                              
— แบบ
UInteger
                                              
—
แบบ ULong
                     1.2 ข้อมูลแบบเลขจำนวนจริง หมายถึง ข้อมูลที่เป็นไปได้ทั้งจำนวนเต็ม และแบบเลขมีจุดทศนิยม แบ่งได้เป็น

                   1) แบบ Single หมายถึง ตัวเลขแบบ Single-precision floating-point มีทศนิยมได้ถึง 7 ตำแหน่ง
                                 2) แบบ
Double หมายถึง ตัวเลขแบบ Double-precision floating-point มี ทศนิยมได้ถึง 17 ตำแหน่ง
                                 3) แบบ
Decimal เป็นข้อมูลที่ละเอียดกว่าแบบ Single และ Double มีทศนิยมได้ถึง 28 ตำแหน่ง

2. ข้อมูลแบบตัวอักษร ( Character ) หมายถึง ข้อมูลที่มีค่าเป็นตัวอักษร แบ่งได้เป็น
                                1) แบบ
Char หมายถึง ตัวอักษรตัวหนึ่ง ในเครื่องหมายอัญประกาศ เช่น “A” หรือเป็นตัวว่างไม่มีค่า (Null) เช่น “ ”
                                2) แบบ String หมายถึง ตัวอักษรหนึ่งตัว หรือหลายตัวต่อเนื่องกันเป็นข้อความ ในเครื่องหมายอัญประกาศ เช่น “Thailand” หรือเป็นตัวว่างไม่มีค่า (Null String)

3. ข้อมูลแบบบูลีน (Boolean) หมายถึง ข้อมูลที่มีค่าเป็นจริง (True) หรือเท็จ (False)

4. ข้อมูลแบบวันที่ (Date) หมายถึง ข้อมูลที่เป็นเดือน วันที่ ปี ค.ศ. และเวลา

5. ข้อมูลแบบวัตถุ (Object) หมายถึง ข้อมูลที่เกี่ยวกับวัตถุต่างๆที่ใช้ใน โปรแกรม สามารถเก็บค่าข้างต้นได้ทุกแบบ


ตาราง 4-1ค่าที่ใช้ได้ของข้อมูลแบบต่างๆ

แบบข้อมูล

อักขระแทน

ช่วงค่าข้อมูล

SByte

ไม่มี

-128 ถึง 127

Short

ไม่มี

-32,768 ถึง 32,767

Integer

%

-2,147,483,648 ถึง 2,147,483,647

Long

&

-9,223,372,036,854,775,808 ถึง 9,223,372,036,854,775,807 (9.2…E+18)*

Byte

ไม่มี

0 ถึง 255

UShort

ไม่มี

0 ถึง 65,535

ULong

ไม่มี

0 ถึง 18,446,744,073,709,551,615 (1.8...E+19)*

Single

!

-3.4028235E+38 ถึง -1.401298E-45* สำหรับค่าที่เป็นลบ 1.401298E-45 ถึง 3.4028235E+38 สำหรับค่าที่เป็นบวก

Double

#

-1.79769313486231570E+308 ถึง -4.94065645841246544E-324* (ค่าลบ) 4.94065645841246544E-324 ถึง 1.79769313486231570E+308 (ค่าบวก)

Decimal

@

0 ถึง +/- 79,228,162,514,264,337,593,543,950,335 (+/- 7.9...E+28)* เมื่อไม่มีจุดทศนิยม 0 ถึง +/- 7.9228162514264337593543950335E+28*

เมื่อมีจุดทศนิยม 28 ตำแหน่ง ค่าต่ำสุดที่ไม่เป็นศูนย์ คือ 0.0000000000000000000000000001 (+/-1E-28)*

char

ไม่มี

0 ถึง 1 ตัวอักษร

String

$

0 ตัวอักษร ถึง ประมาณ 2 พันล้านตัวอักษร

Boolean

ไม่มี

True หรือ False

Date

ไม่มี

0:00:00 (เที่ยงคืน) ของ January 1, 0001 ถึง 11:59:59 PM ของ December 31, 9999

Object

ไม่มี

เก็บได้ทุกแบบ

* เลขแบบวิทยาศาสตร์ (Scientific Notation) E” หมายถึง คูณด้วย 10 ยกกำลัง

4.2 ตัวแปร ( Variable )
                ตัวแปร ( Variable ) หมายถึงที่เก็บข้อมูลในหน่อยความจำขณะที่โปรแกรมทำงานประกอบด้วยชื่อตัวแปรและตำแหน่งที่เก็บ แต่ในการเรียกใช้งานส่วนใหญ่จะใช้ชื่อตัวแปรเป็นหลัก
                ตัวแปรใช้เก็บข้อมูลที่มีการเรียกใช้หลายครั้ง เช่น ในการคำนวณหลายอย่างการเปรียบเทียบข้อมูลหลายครั้ง
                การใช้ตัวแปรมี 3 ขั้นตอน คือ
                                1. ประกาศตัวแปร (
Declare the variable
)
                                2. กำหนดค่าให้ตัวแปร (
Assign the variable
)
                                3. ใช้ตัวแปร (
Use the variable)

1. การประกาศตัวแปร (Declare the variable)
                1.1 การประกาศตัวแปรทีละตัว
                ก่อนที่จะใช้ตัวแปรชื่อใด จะต้องประกาศให้ตัวแปรชื่อนั้นเป็นแบบสัมพันธ์กับแบบของข้อมูลที่จะใช้ โดยประกาศในตอนต้นของโปรแกรม บริเวณส่วนประกาศ (
Declaration) ด้วยประโยคคำสั่ง Dimension ตามรูปแบบดังนี้



ตัวอย่าง

             ถ้าต้องการใช้ตัวแปรชื่อ TempValue สำหรับเก็บข้อมูลตัวเลขจำนวนเต็มแบบ Integer เขียนคำสั่งได้ดังนี้
                                   Dim TempValue As Integer
             แต่ถ้าใช้อักขระแทนแบบของข้อมูลต่อท้ายชื่อตัวแปร ก็จะประกาศได้ดังนี้
                                   
Dim TempValue%
             หมายถึงให้ตัวแปรชื่อ TempValue% เป็นตัวแปรสำหรับเก็บค่าตัวแปรเลขแบบ Integer


 

แบบของตัวแปรที่ใช้ขึ้นอยู่กับแบบข้อมูลและค่าข้อมูล พิจารณาได้จากตาราง 4-1 ค่าที่ใช้ได้ของข้อมูลต่างๆ โดยดูที่ช่วงค่าข้อมูลประกอบ เช่น ถ้าข้อมูลที่ใช้เป็นแบบตัวเลขจำนวนเต็มที่มีค่าไม่เกิน 255 ให้เลือกแบข้อมูลเป็น Byte ดังนั้น ตัวแปรก็ต้องเป็นแบบ Byte
               
1.2 การตั้งชื่อตัวแปร
                การตั้งชื่อตัวแปร ต้องปฏิบัติตามกฎการตั้งชื่อต่างๆ (identifier) ของ Visual Basic ดังต่อไปนี้
                                • ต้องเริ่มด้วยตัวอักษร หรือเส้นใต้ (
_
)
                                • ต้องมีเฉพาะตัวอักษร ตัวเลข หรือเส้นใต้เท่านั้น
                                • ต้องไม่มีตัวอักขระหรือเครื่องหมายอื่น
                                • ถ้าเริ่มด้วยเส้นใต้ ต้องตามด้วยตัวอักษรหรือตัวเลขอย่างน้อย 1 ตัว เช่น
_8

                                • ควรใช้ชื่อที่มีสื่อข้อความว่าใช้เก็บค่าของอะไรเช่น แทนที่จำใช้
S เพื่อเก็บค่าคะแนนของนักเรียน ควรใช้ Student_Score
                               
ยาวไม่เกิน 1023 ตัวอักษร (แต่ในทางปฏิบัติควรใช้สั้นที่สุดและสื่อความหมายได้)
                                • ห้ามเว้นวรรค
                                • ใช้ตัวขีดเส้นใต้แทนช่องว่าง เช่น
Name_1
                                ห้ามใช้ชื่อซ้ำกับคำสงวนหลัก (Reserved Keywards) ของ Visual Basic
เช่น
                                                - คำที่เป็นแบบของข้อมูล เช่น
Single
                                                - คำสั่ง เช่น Dim


ตัวอย่างชื่อตัวแปรที่ใช้ได้

A1                B5_a           New_Price       Income
ตัวอย่างชื่อตัวแปรที่ใช้ไม่ได้

1A   เริ่มด้วยตัวเลขไม่ได้
B  52   
เว้นวรรคไม่ได้
Long  
ใช้คำสงวนไม่ได้
In$come   ใช้อักขระไม่ได้


ตัวอย่าง  วิธีประกาศตัวโปรแกรมในโปรแกรม
             1) สร้างโครงงานใหม่ ใช้ชื่อว่า  Variable
                          2) วางปุ่ม Button1
บนฟอร์ม
                          3) ดับเบิลคลิกที่ปุ่ม
Button1
เพื่อเข้าสู่หน้าต่างโปรแกรม
                          4) พิมพ์ประโยคคำสั่งเพื่อประกาศตัวแปรในส่วนต้นของโปรแกรมดังภาพ 4-2
 
             

ภาพ 4-2 การประกาศตัวแปร



            5) เมื่อพิมพ์ชื่อตัวแปร Student_No แล้ววรรค  จะปรากฏคำ As ให้เลือกดังภาพ 4-3
                          

ภาพ 4-3 As


6) ดับเบิลคลิกที่ As แล้ววรรค จะปรากฏรายการให้เลือก ดังภาพ 4-4
                             


ภาพ 4-4 รายการให้เลือก


7) พิมพ์ by จะปรากฏแบบข้อมูลให้เลือก ดังภาพ 4-5


ภาพ 4-5 เลือกแบบข้อมูล


8) ดับเบิลคลิกที่ Byte เพื่อเลือกแบบ Byte หรือพิมพ์ te ต่อไปได้เลย
9) สำหรับบรรทัดอื่นก็ทำได้ลักษณะเดียวกัน แต่แบบข้อมูลต่างกัน
10) เสร็จแล้วตรวจสอบความถูกต้องและบันทึกโครงงาน
11) ให้โปรแกรมทำงาน
12) คลิกที่ปุ่ม
Button1
จะไม่มีอะไรปรากฏ เพราะไม่ได้พิมพ์คำสั่งเอาไว้
13) ให้โปรแกรมหยุดทำงาน


1.3 การประกาศตัวแปรหลายตัวที่ใช้ข้อมูลแบบเดียวกัน

ถ้าต้องการประกาศตัวแปรหลายตัวให้เป็นแบบข้อมูลเดียวกันแทนที่จะประกาศแยกทีละตัวแต่ละบรรทัด สามารถใช้การประกาศตามรูปแบบดังนี้


 

เช่น  Dim HW_1, HW_2, Sun_HW As Integer
มีความหมายเช่นเดียวกันกับ            Dim  HW_1 As Inyeger
                                                         Dim HW_2 As Integer
                                                         Dim Sun_HW  As Integer


2. การกำหนดค่าให้ตัวแปร (Assign the variable)

ปกติแล้วตัวแปรทุกตัวของ Visual Basic จะมีค่าเริ่มต้นเป็น 0 (ศูนย์) สำหรับตัวแปรที่ใช้กับตัวเลข ส่วนตัวแปรแบบตัวอักษร (Char  String) จะมีค่าเริ่มต้นเป็น Null คือว่าง หรือไม่มีอะไร (“ ”) และตัวแปรแบบบูลีน (Boolean) จะมีค่าเริ่มต้นเป็น False

2.1 การกำหนดค่าเริ่มต้นให้ตัวแปร  ทำได้โดยใช้ประโยคคำสั่งกำหนดค่า (Assignment Statement) ซึ่งมีรูปแบบ ดังนี้



          ชื่อตัวแปรจะต้องตรงกับชื่อที่ประกาศไว้ แลพค่าข้อมูลที่กำหนดจะต้องอยู่ในช่วงค่าข้อมูลแบบข้อมูลที่ประกาศไว้
                ตัวอย่าง            
Student_No = 12               ‘Byte
                                     Student_Score = -10              ‘SByte
                                    Student_Name = “Peterpan”  ‘String


โปรดสังเกตว่า ค่าข้อมูลแบบ String  จะอยู่ในเครื่องหมาย อัญประกาศ

 

                การเขียนหมายเหตุของโปรแกรมอาจเขียนที่บรรทัดไหนก็ได้ หรือเขียนเพื่ออธิบายโปรแกรมเป็นส่วนๆ ไป โดย บรรทัดที่ไม่มีเครื่องหมาย  '  อยู่ข้างหน้าหมายถึงบรรทัดหมาย ซึ่งโปรแกรมจะไม่ทำงานในบรรทัดนั้น ถึงแม้จะเขียนเป็นคำสั่งก็ตาม เช่น
                                    '
TempValue% = 50000
ก็ไม่ได้หมายความว่ากำหนดค่า  -50000 ให้กับตัวแปร  TempValue%















2.2 การกำหนดค่าเริ่มต้นให้ตัวแปร

ในบางกรณีอาจจำเป็นต้องกำหนดค่าเริ่มต้นของตัวแปรเอาไว้ก่อน โดยกำหนดค่าเริ่มต้นตอนประกาศตัวแปร โดยใช้รูปแบบดังนี้


ตัวอย่าง
                ถ้าต้องการให้ตัวแปรชื่อ
Depo เก็บค่าข้อมูลแบเลขจำนวนเต็มแบบ UShort ไม่เกิน  65,535 โดยมีค่าเริ่มต้นเป็น 1เขียน เป็นประโยคคำสั่งประกาศด้วยตัวแปรได้ดังนี้
                                                                               
Dim Depo As UShort = 1
               
การกำหนดค่าเริ่มต้นให้ตัวแปร เป็นการป้องกันความผิดพลาดซึ่งอาจเกิดขึ้นเมื่อใช้ตัวแปร  เช่น  กำหนดค่าให้ตัวแปรแต่ไม่ได้ประกาศตัวแปรก่อน หรือประกาศตัวแปรแต่ไม่ได้กำหนดค่า
                ตัวแปรที่ประกาศและกำหนดค่าเริ่มต้นไว้สามารถกำหนดค่าใหม่ได้อีกภายหลังเมื่อต้องการ


3.การใช้ตัวแปร (Use the variable)
ตัวแปรที่ได้ประกาศและกำหนดค่าไว้แล้ว จึงจะสามารถนำมาใช้ได้ เช่น ใช้ในการคำนวน
เปรียบเทียบ หรือแสดงค่า
การแสดงค่าของตัวแปร สามารถแสดงได้โดยใช้ตัวควบคุมต่างๆ เช่น ป้ายแสดงข้อความ กล่องข้อความ กล่องข่าวสาร และเครื่องพิมพ์

3.1 การใช้กล่องข่าวสาร (MessageBox) แสดงค่าของตัวแปรทีละตัว
                ใช้ประโยคคำสั่งดังนี้

ซึ่งมีความหมายดังนี้
ชื่อตัวแปร             หมายถึง แสดงค่าของตัวแปร
0                             หมายถึง ให้กล่องข่าวสารแสดงปุ่ม
OK
ข้อความ
            หมายถึง ข้อความที่จะปรากฏบนแถบชื่อของกล่องข่าวสาร
ถ้าต้องการแสดงค่าของตัวแปรชื่อ
Student_No และแสดงชื่อของตัวแปรด้วยเขียนประโยคคำสั่งได้ดังนี้


จากโครงงาน  Variable1 เมื่อเพิ่มประโยคคำสั่งแสดงค่าของตัวแปรเข้าไปทั้งสามตัวตามลำดับ  จะได้ดังนี้
               
MsgBox(Student_No, 0,  “Student_No”
)
               
MsgBox(Student_Score, 0, “Student_Scoer”
)
               
MsgBox(Student_Name, 0, “Student_Name”)


เมื่อพิมพ์เข้าไปในหน้าต่างโปรแกรม จะได้ดังภาพ 4-8



ภาพ 4-8 การแสดงค่าตัวแปร

เมื่อให้โปรแกรมทำงาน จะได้ผลดังภาพ 4-9




ภาพ 4-9


เมื่อกดปุ่ม OK จะได้ผลดังภาพ 4-10




ภาพ 4-10


เมื่อกดปุ่ม OK จะได้ผลดังภาพ 4-11




ภาพ 4-11


3.2 การใช้กล่องข่าวสารแสดงค่าของตัวแปรหลายตัว
                ค่าของตัวแปรหลายตัว อาจนำมาผนวกกันเพื่อแสดงผลโดยใช้กล่องข่าวสารเพียงกล่องเดียวก็ได้ เช่น จากโครงงาน
Variable5 อาจเขียนประโยคคำสั่งใหม่เพื่อให้แสดงผลได้ดังภาพ 4-15


ภาพ 4-15


วิธีการทำ
                ก) ตรงแถบชื่อของกล่องข่าวสาร
                1) ใช้ข้อความ
ลำดับที่รวมกับค่าของตัวแปรชื่อ Student_No
                2) การรวมข้อความ ใช้ตัวอักขระ & ดังนั้นเขียนข้อความใหม่ได้เป็น ลำดับที่” & Student_No
               
ข) ข้อความที่ปรากฏในกล่องข่าวสาร
                1)ใช้ค่าของตัวแปรชื่อ
Student_Name  รวมกับข้อความ ได้คะแนน รวมกับ ค่าของตัวแปรชื่อ Student_Score
                2
) เขียนข้อความใหม่ได้เป็น
               
Student_Name & “ได้คะแนน  & Student_Score
ดังนั้น ประโยคคำสั่งของกล่องข่าวสารจึงเขียนใหม่ได้ดังนี้






Comments