Breaking

Responsive Ads Here

5.3 การเลือกทําแบบ Switch

        การเขียนโปรแกรมที่ต้องมีการเลือกทำหลายทางเลือกเราสามารถนำประโยคคำสั่ง if-else มาซ้อนกันได้ แต่ถ้าเงื่อนไขที่ต้องตัดสินใจขึ้นอยู่กับตัวแปรตัวเดียวเราสามารถใช้คำสั่ง switch..case แทนได้ ตัวอย่างเช่น ถ้าเขียนโปรแกรมเป็นสัญลักษณ์เมนูดังต่อไปนี้


        และให้ผู้ใช้โปรแกรมเลือกวิธีการคำนวณเข้าไปโดยป้อนค่าอินพุตเข้าไป เราสามารถเขียนโปรแกรมโดยนำค่าอินพุตที่รับเข้าไปเก็บไว้ในตัวแปรตัวหนึ่ง และใช้คำสั่ง switch เลือกว่ามีค่าเท่ากับค่าใด (1ม2ม3ม4) จากนั้นให้ไปทำงานตามที่เลือก ประโยคคำสั่ง switch..case มีรูปแบบดังนี้
รูปแบบ :
    switch    (variable)
    {
        case    constant_1 :    statement;
                                           break;
        case    constant_2 :    statement;
                                           break;
        case    constant_3 :    statement;
                                           break;
        ...............................    .................
        case    constant_n :    statement;
                                           break;
        default    :    statement
}
        คำสั่ง switch นี้จะนำค่าใน variable มาตรวจสอบว่าเท่ากับค่าคงที่ค่าใดหลัง case จากนั้นโปรแกรมจะไปทำสเตตเมนต์หลังค่าคงที่ตัวนั้น และออกจาก switch เมื่อถึงคำสั่ง break แต่ถ้าไม่เท่าค่ากับค่าคงที่ค่าใดเลย โปรแกรมจะไปทำสเตตเมนต์หลัง default สำหรับค่าที่ใช้ตรวจสอบจะเป็นตัวแปร นิพจน์ หรือฟังก์ชันก็ได้ สำหรับในแต่ละ case สามารถมีคำสั่งได้มากกว่าหนึ่งคำสั่งหรืออาจไม่มีก็ได้ โดยถ้าไม่มีคำสั่งโปรแกรมจะไปทำงานใน case ถัดไป และค่าคงที่หลัง case จะต้องเป็น int หรือ char เท่านั้น
        สำหรับตัวแปรเลือกทำที่อยู่ตามหลัง switch จะต้องเป็นตัวแปรประเภทลำดับ ซึ่งจะทำให้คอมพิวเตอร์สามารถเดาค่าได้ และค่าคงที่ต้องเป็นตัวโปรแกรมประเภทเดียวกับตัวแปรที่ตามหลัง switch การทำงานของคำสั่ง switch..case อาจจะเขียนเป็นผังงานได้ดังนี้

ไม่มีความคิดเห็น:

แสดงความคิดเห็น