Sådan bruges Nested Switch i MATLAB

Sadan Bruges Nested Switch I Matlab



En indlejret switch er en switch-sætning, der er indeholdt i en anden switch-sætning. Det betyder, at den indre switch-sætning kun udføres, hvis den ydre switch-sætning matcher et bestemt tilfælde. Det er en måde at skabe en mere kompleks beslutningsstruktur i MATLAB.

Hvorfor bruge en indlejret switch?

Indlejrede switches kan skabe mere komplekse beslutningsstrukturer i MATLAB. De kan implementere en række forskellige logikker, såsom if-else-if-udsagn, case-udsagn og endda loops.

For eksempel kunne en indlejret switch bruges til at bestemme outputtet baseret på værdien af ​​to variable. Den ydre switch-sætning kunne bruges til at bestemme den første variabel, og den indre switch-sætning kunne bruges til at bestemme den anden variabel.







Syntaks for en Nested Switch i MATLAB

I MATLAB vil nedenstående syntaks blive fulgt for indlejret switch-sætning:



skifte ydre_variabel
sag 1
skifte indre_variabel
sag 1
...
sag 2
...
Ellers
...
ende
sag 2
...
Ellers
...
ende

Eksempel på en Nested Switch i MATLAB

Følgende kode definerer en indlejret switch-sætning, der bestemmer outputtet baseret på værdien af ​​variablen x og værdien af ​​variablen y:



x = 2 ;
og = 3 ;

skifte x
sag 1
skifte y
sag 1
disp ( 'elleve' ) ;
sag 2
disp ( '1, 2' ) ;
Ellers
disp ( '1, ellers' ) ;
ende
sag 2
skifte y
sag 2
disp ( '2, 2' ) ;
sag 3
disp ( '23' ) ;
Ellers
disp ( '2, ellers' ) ;
ende
Ellers
disp ( 'Ellers' ) ;
ende

Denne MATLAB-kode definerer to variable ved navn x og y. Værdien af ​​x er 2 og y er 3. Den bruger derefter en indlejret switch-case-struktur til at evaluere værdierne af x og y. Afhængigt af værdierne vises forskellige meddelelser som output. I dette tilfælde vil koden udsende 2, 3, da x er 2 og y er 3.





Karakterberegning for matematikfag ved hjælp af Nested Switch i MATLAB

Nu vil vi tildele en karakter til eleverne afhængigt af deres karakterer ved hjælp af den indlejrede switch i MATLAB.



emne = 'Matematik' ;
score = 85 ;
karakter = '' ;

skifte emne
sag 'Matematik'
kontakt rigtigt
sag score > = 90 && score = 80 && score < = 89
karakter = 'B' ;
disp ( 'Score ligger mellem 80 og 89. Karakter: B' ) ;
Ellers
karakter = 'C' ;
disp ( 'Score er under 80. Karakter: C' ) ;
ende
sag 'Engelsk'
% håndtere engelsk-specifik karaktergivning
Ellers
% varetage andre fag
ende

Denne MATLAB-kode beregner karakteren for et matematikfag baseret på en given score. Koden bruger indlejrede switch-sætninger til at bestemme karakteren baseret på scoreintervaller. Hvis karakteren falder mellem 90 og 100, sættes karakteren til A. Falder den mellem 80 og 89, sættes karakteren til B. Ellers sættes karakteren for karakterer under 80 til C. Koden indeholder også tilsvarende disp()-udsagn for at vise karakteren og scoreintervallet.

Konklusion

Ved at bruge indlejrede switch-sætninger i MATLAB kan vi designe komplekse beslutningsstrukturer. De tillader betinget udførelse af indre switch-udsagn baseret på tilfælde af en ydre switch. Dette gør det muligt at håndtere flere variabler og betingelser inden for en enkelt kodeblok, hvilket forbedrer kodelæsbarheden og effektiviteten.