บทที่ 6 โปรแกรมตัดเกรดแบบง่าย
โปรแกรมตัดเกรดแบบง่าย เป็นตัวอย่างโปรแกรม ที่ใช้การสุ่มตัวเขคะแนน ขึ้นมา แล้วทำการตรวจสอบว่า คะแนนดังกล่าว ควรจะได้เกรดเท่าไร โดยตัวอย่าง จะได้นำเสนอถึงการนำ คำสั่งในการสุ่ม (Ramdom) และ การใช้ Select Case มาใช้งาน
ดาวน์โหลดโปรแกรม
การออกแบบโปรแกรม
เราจะทำง่ายคือ วางคอนโทรล 3 อย่างด้วยกัน
ซึ่งได้แก่ TextBox, CommandButton และ Label โดย TextBox จะเป็นช่องสำหรับกรอกคะแนน ที่ต้องการทราบเกรด ปุ่ม CommandButton จะเป็นปุ่มที่คลิกสั่งเพื่อให้คำนวณเกรด
และมี Label ทำหน้าที่แสดงผลเกรดที่ได้ ก่อนอื่นให้คุณทำการคลิกและลาก คอลโทรล
ออกมาวาง ไว้บน Form
ทำการคลิกเลือก คอนโทรล ทีละอัน แล้วทำการกำหนด Property ตามตาราง ดังต่อไปนี้
Control |
Property |
Value |
Form |
Name |
frmMain |
|
Caption |
Grade |
TextBox |
Name |
txtScore |
|
Text |
|
Label |
Name |
lbGrade |
|
Caption |
|
CommandButton |
Name |
cmdButton |
|
Caption |
Random |
ผลที่ได้คือหน้าตาของ Form ใหม่ดังรูปด้านล่าง
รูปแสดง การวางคอนโทรลบน Form หลังจากกำหนด Property แล้ว
เริ่มต้นใส่โค้ดการทำงาน
ขั้นตอนต่อไป จะเป็นการใส่โค้ดเข้าไปเพื่อให้โปรแกรมที่เราสร้างขึ้น สามารถที่จะทำงานได้ตรงตามวัตถุประสงค์ที่ตั้งไว้ ซึ่งการทำงานของโปรแกรม จะเริ่มจาก การสุ่มตัวเลขคะแนน ตั้งแต่ 0 ถึง 100 และทำการเลือกว่า คะแนนดังกล่าว อยู่ในระดับของเกรด เท่าไร
โดยการทำงานทั้งหมด จะอยู่ภายใต้ Sub ที่ชื่อว่า RandomGrade ขั้นตอนต่อไป
ให้คุณเปิดหน้าต่าง Code View ขึ้นมา
และทำการเลือกที่ตำแหน่ง บรรทัดล่าง ดังรูป
รูปแสดง หน้าต่าง Code View
จากนั้นทำการป้อนโค้ดดังต่อไปนี้ลงไป เฉพาะส่วนของ Sub RandomGrade()
ตามตารางโค้ด ด้านล่าง
Sub RandomGrade()
Dim score As Integer
Dim grade As String
Randomize
score = Fix(Rnd * 100)
If score >= 80 Then
grade = "A"
ElseIf score >= 70 Then
grade = "B"
ElseIf score >= 60 Then
grade = "C"
ElseIf score >= 50 Then
grade = "D"
Else
grade = "F"
End If
txtScore.Text = score
lbGrade.Caption = grade
End Sub
|
อธิบายการทำงาน
การทำงานของ Sub RandomGrade จะเริ่มต้นด้วยการประกาศตัวแปร score ไว้เก็บค่าคะแนน และ grade ไว้เก็บเกรดที่ได้ จากนั้นจะใช้กระบวนการสุ่ม โดยเริ่มจากคำสั่ง Randomize เพื่อเป็นการเริ่มต้นของการเลือกค่าสุ่ม และ ใช้ฟังก์ชั่น Rnd (Random) ในการสุ่มค่าออกมา ซึ่งจะเป็นเลขจำนวนหนึ่งที่เป็นทศนิยม เมื่อนำมาคูณด้วย 100 ทำให้ค่าที่ได้ อยู่ระหว่าง 0 ถึง 100 และใช้ฟังก์ชั่น Fix แปลงเลขดังกล่าว ให้เป็นเลขจำนวนเต็ม แล้วนำไปเก็บไว้ในตัวแปร score
กระบวนการต่อมาเป็นการใช้ ชุดคำสั่ง IF ในการตรวจสอบค่า ว่ามีค่ามากกว่าหรือเท่ากับ 80 ให้เกรด A และอื่นๆ ถัดๆมา ตามโค้ด จะเป็นการตรวจสอบคะแนน สำหรับระดับเกรดต่างๆออกมา เมื่อได้ค่าของ score และ grade แล้ว สุดท้ายจะนำค่าทั้งสอง ไปแสดงบน txtScore ซึ่งเป็น TextBox และ บน blGrade ซึ่งเป็น Label
ทดสอบ Run โปรแกรม
จากขั้นตอนที่ผ่านมา ยังเป็นเพียงการสร้าง Sub ขึ้นมา ดังนั้นขั้นตอนต่อมา เราจะทำการเพิ่มโค้ดเข้าไปในส่วนของการ คลิกปุ่ม cmdButton เพื่อให้ เมื่อมีการคลิกปุ่ม เราก็จะสั่งให้มีการสุ่ม และแสดงค่าคะแนน และเกรดออกมา
เริ่มต้นการใส่โค้ดในส่วนของการคลิกปุ่มคือ ทำการคลิกเลือกที่ View Object จะมี Form แสดงออกมา และทำการดับเบิ้ลคลิกที่ปุ่ม cmdButton
รูปแสดง การเปิดแสดง Form
จะปรากฏหน้าต่าง Code View ให้คุณทำการป้อนโค้ดลงในส่วนของ Sub ดังรูป
รูปแสดงการเพิ่มโค้ด เพื่อเรียกใช้ sub
การ Run สามารถทำได้โดยทำการคลิกเลือก Emulator ที่ต้องการจะ run เป็น Pocket PC 2002 Emulation
รูปแสดง การเลือก Emulator เพื่อจะ run โปรแกรม
เมื่อทำการเลือกแล้ว คุณสามารถคลิกที่ปุ่ม ลูกศร ที่อยู่บน Toolbar หรือ กดปุ่ม F5 เพื่อทำการ Run โปรแกรม หลังจากนั้นจะมีการเรียก Emulator ขึ้นมา หากมีข้อความยืนยัน ให้การ update ใดๆ ให้คุณเลือก Yes เพื่อยืนยัน ทั้งหมด ผลที่ได้จากการ Run จะเป็นดังหน้าต่าง ที่เราได้ออกแบบไว้ ให้คุณทำการทดสอบการทำงาน โดยคลิกปุ่ม cmdButton ดังรูป
รูปแสดง ผลการ Run โปรแกรมบน Emulator
จะเห็นได้ว่าเมื่อคุณทำการคลิกปุ่ม ทุกครั้งจะมีการสุ่มคะแนน และ คำนวณเกรดออกมาให้ และถ้าหากคุณต้องการให้มีการสุ่มเลือก ตั้งแต่เริ่มต้นการทำงานของโปรแกรม สามารถทำได้โดย คลิกปุ่ม OK ที่อยู่ด้านบนของ Emulator หรือ คลิกปุ่ม End ที่อยู่บน Toolbar หลักจากนั้น คลิกไปยังหน้าต่างของ Code View และเลือกช่องด้านซ้ายเป็น Form และเลือกด้านขวาเป็น Load ดังรูป
แสดงรูป การเพิ่ม Sub สำหรับการทำงานเริ่มต้นของโปรแกรม
การเลือกดังกล่าวเป็นการสร้าง Sub สำหรับให้ทำงานเมื่อ Form นี้ถูก Load การทำงานในกระบวนการของการ Run โปรแกรม ซึ่งในที่นี้เราจะนำโค้ดที่จะเรียกการทำงานของ sub RandomGrade มาใช้ ดังรูป
รูปแสดง การเพิ่มโค้ด เพื่อให้ทำงานตั้งแต่เริ่มโปรแกรม
จากนั้นให้ลองทดสอบ Run อีกครั้ง ก็จะเห็นได้ว่า การสุ่ม จะเกิดขึ้นตั้งแต่การเริ่มต้นโปรแกรม
|