A Nested Switch használata a MATLAB-ban

A Nested Switch Hasznalata A Matlab Ban



A beágyazott switch egy switch utasítás, amely egy másik switch utasításban található. Ez azt jelenti, hogy a belső switch utasítás csak akkor kerül végrehajtásra, ha a külső kapcsoló utasítás megegyezik egy adott esettel. Ez egy mód a MATLAB-ban összetettebb döntési struktúra létrehozására.

Miért érdemes beágyazott kapcsolót használni?

A beágyazott kapcsolók bonyolultabb döntési struktúrákat hozhatnak létre a MATLAB-ban. Különféle logikákat valósíthatnak meg, például if-else-if utasításokat, eset-utasításokat és akár ciklusokat is.

Például egy beágyazott kapcsoló használható a kimenet meghatározására két változó értéke alapján. A külső switch utasítás használható az első változó meghatározására, a belső switch utasítás pedig a második változó meghatározására.







Egy beágyazott kapcsoló szintaxisa a MATLAB-ban

A MATLAB-ban az alábbi szintaxist követik a beágyazott switch utasítások:



kapcsoló külső_változó
ügy 1
kapcsoló belső_változó
ügy 1
...
ügy 2
...
másképp
...
vége
ügy 2
...
másképp
...
vége

Példa egy beágyazott kapcsolóra a MATLAB-ban

A következő kód egy beágyazott switch utasítást határoz meg, amely az x változó értéke és az y változó értéke alapján határozza meg a kimenetet:



x = 2 ;
és = 3 ;

kapcsoló x
ügy 1
kapcsoló y
ügy 1
diszp ( 'tizenegy' ) ;
ügy 2
diszp ( '1, 2' ) ;
másképp
diszp ( '1, különben' ) ;
vége
ügy 2
kapcsoló y
ügy 2
diszp ( '2, 2' ) ;
ügy 3
diszp ( '23' ) ;
másképp
diszp ( '2, különben' ) ;
vége
másképp
diszp ( 'másképp' ) ;
vége

Ez a MATLAB kód két változót határoz meg, amelyek neve x és y. x értéke 2, y értéke 3. Ezután egy beágyazott kapcsoló-eset struktúrát használ az x és y értékeinek kiértékeléséhez. Az értékektől függően különböző üzenetek jelennek meg kimenetként. Ebben az esetben a kód 2, 3 értéket ad ki, mivel x értéke 2 és y 3.





Osztályszámítás matematikai tárgyhoz a MATLAB beágyazott kapcsolójával

Most a MATLAB beágyazott kapcsolója segítségével osztályzatot adunk a tanulókhoz a jegyeik alapján.



tárgy = 'Matek' ;
pontszám = 85 ;
évfolyam = '' ;

témát váltani
ügy 'Matek'
kapcsoló igaz
ügy pontszám > = 90 && pontszám = 80 && pontszám < = 89
évfolyam = 'B' ;
diszp ( 'A pontszám 80 és 89 közé esik. Besorolás: B' ) ;
másképp
évfolyam = 'C' ;
diszp ( 'A pontszám 80 alatt van. Osztály: C' ) ;
vége
ügy 'Angol'
% kezelni az angol nyelvű osztályozást
másképp
% más tárgyakat kezelni
vége

Ez a MATLAB kód kiszámítja a matematika tantárgy osztályzatát egy adott pontszám alapján. A kód beágyazott switch utasításokat használ az osztályzat meghatározásához a pontszámok tartományai alapján. Ha a pontszám 90 és 100 közé esik, az osztályzat értéke A. Ha 80 és 89 közé esik, az osztályzat B-re lesz állítva. Ellenkező esetben a 80 alatti pontszámok esetén az osztályzat értéke C. A kód a megfelelő disp() utasításokat is tartalmazza az érdemjegy és a pontszámtartomány megjelenítéséhez.

Következtetés

A MATLAB beágyazott switch utasításai segítségével összetett döntési struktúrákat tervezhetünk. Lehetővé teszik a belső kapcsoló utasítások feltételes végrehajtását a külső kapcsoló esetei alapján. Ez lehetővé teszi több változó és feltétel kezelését egyetlen kódblokkon belül, javítva a kód olvashatóságát és hatékonyságát.