Warum einen verschachtelten Schalter verwenden?
Verschachtelte Schalter können in MATLAB komplexere Entscheidungsstrukturen erstellen. Sie können eine Vielzahl verschiedener Logiken implementieren, z. B. if-else-if-Anweisungen, case-Anweisungen und sogar Schleifen.
Beispielsweise könnte ein verschachtelter Schalter verwendet werden, um die Ausgabe basierend auf dem Wert zweier Variablen zu bestimmen. Die äußere Switch-Anweisung könnte verwendet werden, um die erste Variable zu bestimmen, und die innere Switch-Anweisung könnte verwendet werden, um die zweite Variable zu bestimmen.
Syntax eines verschachtelten Schalters in MATLAB
In MATLAB wird die folgende Syntax für verschachtelte Switch-Anweisungen befolgt:
äußere_Variable wechseln
Fall 1
inner_variable wechseln
Fall 1
...
Fall 2
...
ansonsten
...
Ende
Fall 2
...
ansonsten
...
Ende
Beispiel eines verschachtelten Schalters in MATLAB
Der folgende Code definiert eine verschachtelte Switch-Anweisung, die die Ausgabe basierend auf dem Wert der Variablen x und dem Wert der Variablen y bestimmt:
x = 2 ;
und = 3 ;
Schalter x
Fall 1
Y-Schalter
Fall 1
disp ( 'elf' ) ;
Fall 2
disp ( '1, 2' ) ;
ansonsten
disp ( '1, sonst' ) ;
Ende
Fall 2
Y-Schalter
Fall 2
disp ( '2, 2' ) ;
Fall 3
disp ( '23' ) ;
ansonsten
disp ( '2, sonst' ) ;
Ende
ansonsten
disp ( 'ansonsten' ) ;
Ende
Dieser MATLAB-Code definiert zwei Variablen mit den Namen x und y. Der Wert von x ist 2 und y ist 3. Anschließend wird eine verschachtelte Switch-Case-Struktur verwendet, um die Werte von x und y auszuwerten. Abhängig von den Werten werden unterschiedliche Meldungen als Ausgabe angezeigt. In diesem Fall gibt der Code 2, 3 aus, da x 2 und y 3 ist.
Notenberechnung für das Mathematikfach mit Nested Switch in MATLAB
Jetzt werden wir den Schülern mithilfe des verschachtelten Schalters in MATLAB eine Note basierend auf ihren Noten zuweisen.
Betreff = 'Mathematik' ;
Punktzahl = 85 ;
Note = '' ;
Thema wechseln
Fall 'Mathematik'
schalten WAHR
Fall Punktzahl > = 90 && Punktzahl = 80 && Punktzahl < = 89
Note = 'B' ;
disp ( „Die Punktzahl liegt zwischen 80 und 89. Note: B“ ) ;
ansonsten
Note = 'C' ;
disp ( „Die Punktzahl liegt unter 80. Note: C“ ) ;
Ende
Fall 'Englisch'
% kümmern sich um die englischspezifische Benotung
ansonsten
% sich mit anderen Themen befassen
Ende
Dieser MATLAB-Code berechnet die Note für ein Mathematikfach anhand einer vorgegebenen Punktzahl. Der Code verwendet verschachtelte Switch-Anweisungen, um die Note basierend auf Bewertungsbereichen zu bestimmen. Liegt die Punktzahl zwischen 90 und 100, wird die Note auf A gesetzt. Liegt sie zwischen 80 und 89, wird die Note auf B gesetzt. Ansonsten wird bei Punktzahlen unter 80 die Note auf C gesetzt. Der Code enthält auch entsprechende disp()-Anweisungen zur Anzeige der Note und des Punktebereichs.
Abschluss
Mithilfe verschachtelter Switch-Anweisungen in MATLAB können wir komplexe Entscheidungsstrukturen entwerfen. Sie ermöglichen die bedingte Ausführung innerer Switch-Anweisungen basierend auf den Fällen eines äußeren Switches. Dies ermöglicht die Handhabung mehrerer Variablen und Bedingungen innerhalb eines einzigen Codeblocks und verbessert so die Lesbarkeit und Effizienz des Codes.