วิธีใช้ Nested Switch ใน MATLAB

Withi Chi Nested Switch Ni Matlab



สวิตช์ที่ซ้อนกันคือคำสั่งสวิตช์ที่มีอยู่ในคำสั่งสวิตช์อื่น ซึ่งหมายความว่าคำสั่ง switch ด้านในจะทำงานก็ต่อเมื่อคำสั่ง switch ด้านนอกตรงกับกรณีเฉพาะ เป็นวิธีสร้างโครงสร้างการตัดสินใจที่ซับซ้อนมากขึ้นใน MATLAB

เหตุใดจึงต้องใช้สวิตช์ที่ซ้อนกัน

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

ตัวอย่างเช่น สวิตช์ที่ซ้อนกันสามารถใช้เพื่อกำหนดเอาต์พุตตามค่าของตัวแปรสองตัว สามารถใช้คำสั่งสวิตช์ภายนอกเพื่อกำหนดตัวแปรแรกและคำสั่งสวิตช์ภายในสามารถใช้เพื่อกำหนดตัวแปรที่สอง







ไวยากรณ์ของ Nested Switch ใน MATLAB

ใน MATLAB ด้านล่างไวยากรณ์จะถูกติดตามสำหรับคำสั่งสวิตช์ที่ซ้อนกัน:



สลับouter_variable
กรณี 1
เปลี่ยน inner_variable
กรณี 1
...
กรณี 2
...
มิฉะนั้น
...
จบ
กรณี 2
...
มิฉะนั้น
...
จบ

ตัวอย่าง Nested Switch ใน MATLAB

รหัสต่อไปนี้กำหนดคำสั่งสวิตช์ที่ซ้อนกันซึ่งกำหนดเอาต์พุตตามค่าของตัวแปร x และค่าของตัวแปร y:



x = 2 ;
และ = 3 ;

สลับ x
กรณี 1
สลับ y
กรณี 1
แจกจ่าย ( 'สิบเอ็ด' ) ;
กรณี 2
แจกจ่าย ( '1, 2' ) ;
มิฉะนั้น
แจกจ่าย ( '1 มิฉะนั้น' ) ;
จบ
กรณี 2
สลับ y
กรณี 2
แจกจ่าย ( '2, 2' ) ;
กรณี 3
แจกจ่าย ( '23' ) ;
มิฉะนั้น
แจกจ่าย ( '2 มิฉะนั้น' ) ;
จบ
มิฉะนั้น
แจกจ่าย ( 'มิฉะนั้น' ) ;
จบ

รหัส MATLAB นี้กำหนดตัวแปรสองตัวชื่อ x และ y ค่าของ x คือ 2 และ y คือ 3 จากนั้นจะใช้โครงสร้างเคสสวิตช์ที่ซ้อนกันเพื่อประเมินค่าของ x และ y ขึ้นอยู่กับค่า ข้อความต่างๆ จะแสดงเป็นเอาต์พุต ในกรณีนี้ รหัสจะออกเป็น 2, 3 เนื่องจาก x คือ 2 และ y คือ 3





การคำนวณเกรดวิชาคณิตศาสตร์โดยใช้ Nested Switch ใน MATLAB

ตอนนี้เราจะกำหนดเกรดให้กับนักเรียนตามคะแนนของนักเรียนโดยใช้สวิตช์ที่ซ้อนกันใน MATLAB



หัวเรื่อง = 'คณิตศาสตร์' ;
คะแนน = 85 ;
เกรด = '' ;

เปลี่ยนเรื่อง
กรณี 'คณิตศาสตร์'
สวิตช์ จริง
กรณี คะแนน > = 90 && คะแนน = 80 && คะแนน < = 89
เกรด = 'บี' ;
แจกจ่าย ( 'คะแนนอยู่ระหว่าง 80 ถึง 89 เกรด: B' ) ;
มิฉะนั้น
เกรด = 'ค' ;
แจกจ่าย ( 'คะแนนต่ำกว่า 80 เกรด: C' ) ;
จบ
กรณี 'ภาษาอังกฤษ'
% จัดการการให้คะแนนเฉพาะภาษาอังกฤษ
มิฉะนั้น
% จัดการกับวิชาอื่นๆ
จบ

รหัส MATLAB นี้จะคำนวณเกรดสำหรับวิชาคณิตศาสตร์ตามคะแนนที่กำหนด รหัสนี้ใช้คำสั่งสวิตช์ที่ซ้อนกันเพื่อกำหนดเกรดตามช่วงคะแนน หากคะแนนอยู่ระหว่าง 90 ถึง 100 คะแนนจะถูกตั้งค่าเป็น A หากอยู่ระหว่าง 80 ถึง 89 คะแนนจะถูกตั้งค่าเป็น B มิฉะนั้น สำหรับคะแนนที่ต่ำกว่า 80 คะแนนจะถูกตั้งค่าเป็น C รหัสยังมีคำสั่ง disp() ที่สอดคล้องกันเพื่อแสดงเกรดและช่วงคะแนน

บทสรุป

การใช้คำสั่งสวิตช์ที่ซ้อนกันใน MATLAB เราสามารถออกแบบโครงสร้างการตัดสินใจที่ซับซ้อนได้ พวกเขาอนุญาตให้ดำเนินการตามเงื่อนไขของคำสั่งสวิตช์ภายในตามกรณีของสวิตช์ภายนอก ซึ่งช่วยให้สามารถจัดการตัวแปรและเงื่อนไขหลายรายการภายในบล็อกโค้ดเดียว ปรับปรุงความสามารถในการอ่านโค้ดและประสิทธิภาพ