Select...Case คืออะไร?
Select...Case เป็นการตัดสินใจเลือก จากทางเลือกที่มีมากกว่า 2 ทางเลือก
แล้วมันต่างจาก If...Then...Else ยังไง?
ต่างสิครับ!!!
เพราะ If...Then...Else จะเป็นคำสั่งในลักษณะของการตรวจสอบเงื่อนไข โดยมีการเปรียบเทียบด้วย เช่น Text1.Text = 20, Text1.Text > 20 เป็นต้น
แล้ว Select...Case หล่ะ?
Select...Case จะเป็นคำสั่งที่เป็นลักษณะของการตรวจสอบเงื่อนไขเหมือนกันแต่ จะต้องตรงตามเงื่อนไขนั้น ไม่มีการเปรียบเทียบน่ะครับ
พูดไปแล้วนักเรียนคงจะนึกภาพไม่ออก มาดูตัวอย่างกันเลยดีกว่าครับ
แต่ก่อนจะดูตัวอย่าง เรามาดูกันก่อนว่า Select...Case มันมีโครงสร้างการทำงานอย่างไร?
โครงสร้างการทำงานของคำสั่ง Select...Case
ดูจากโครงสร้างแล้วคงไม่ต้องอธิบายอะไรมาก
ง่ายๆคือ นำเงื่อนไขมาตรวจดูว่าตรงกับเงื่อนไขข้อไหน สมมติถ้าตรงกับเงื่อนไขแรก ก็จะทำงานคำสั่งที่ต่อท้าย เงื่อนไขแรก แต่ถ้าไม่ตรงกับเงื่อนไขใดเลย ให้ทำงานหลัง Else
ตัวอย่างโปรแกรมน่ะครับ
นี่คือโค๊ดการทำงานครับ
การทำงานของโปรแกรมนี้คือ เมื่อป้อนค่าเข้าไปในช่อง Text1 แล้ว โปรแกรมจะเก็บค่าตัวแปรไว้ในตัวแปร age จากนั้นจะทำการตรวจสอบเงื่อนไขว่าตรงกับเงื่อนไขข้อใด เมื่อตรงกับเงื่อนไขใดแล้วจะทำการโชว์ข้อความในช่อง Text2 ตามเงื่อนไขที่ตรงกัน
เช่น หากเราป้อนอายุ 22 ซึ่งตรงกับ Case ที่ว่า Case 13 To 24 โปรแกรมจะทำการโชว์ข้อความว่า "คุณเป็นวัยรุ่น" ในช่อง Text2 และโชว์ MessegeBox กรอกอายุใหม่
ง่ายใช่มั้ยครับ ง่ายจริง!!!
เวลาเราต้องการสร้างโปรแกรมตัดเกรดเราควรใช้คำสั่งไหนจะดีกว่ากันครับ ระหว่าง If...Then...Else หรือว่า Select...Case ครับ เพราะมันดูคล้ายกันครับ อยากรู้เลยถามอาจารย์ดูครับ
ตอบลบแล้วแต่ความถนัดของแต่ละคนครับ อย่างครูถนัด Select...Case มากกว่า เพราะคำสั่งค่อนข้างไม่ซับซ้อน เข้าใจง่าย แต่ไม่แน่เราอาจจะถนัดคำสั่ง If...Then...Else ก็ได้ ลองศึกษาดูน่ะครับ เราอาจจะถนัดคำสั่งนี้ก็ได้
ลบผมว่า Select...Case ใช้ง่ายกว่าน่ะครับ มันดูแบ่งเป็นสัดส่วนดี ไม่เหมือน if...then...else มันซับซ้อนครับ
ลบหนูใช้ If...Then...Else ทำโปรแกรมตัดเกรดค่ะ ยากอยู่น่ะค่ะ ว่าจะลองทำด้วยคำสั่ง Select...Case มันจะยากกว่ารึป่าวไม่รุ้ ห้าๆๆๆ
ลบนักเรียนลองใช้คำสั่ง Select...Case ทำดูน่ะ รับรองว่าจะร้องโอ้โหแน่นอน เพราะมันใช้ง่ายกว่าเยอะ ^___^
ลบ