Зачем использовать вложенный коммутатор?
Вложенные переключатели могут создавать более сложные структуры решений в MATLAB. Они могут реализовывать различную логику, такую как операторы if-else-if, операторы case и даже циклы.
Например, вложенный переключатель можно использовать для определения выходных данных на основе значений двух переменных. Оператор внешнего переключателя может использоваться для определения первой переменной, а внутренний оператор переключателя может использоваться для определения второй переменной.
Синтаксис вложенного переключателя в MATLAB
В MATLAB ниже будет использоваться синтаксис для вложенного оператора switch:
переключатель внешняя_переменная
случай 1
переключатель внутренняя_переменная
случай 1
...
случай 2
...
в противном случае
...
конец
случай 2
...
в противном случае
...
конец
Пример вложенного переключателя в MATLAB
Следующий код определяет вложенный оператор switch, который определяет выходные данные на основе значения переменной x и значения переменной y:
х = 2 ;
и = 3 ;
переключатель х
случай 1
переключатель у
случай 1
дисп ( 'одиннадцать' ) ;
случай 2
дисп ( '1, 2' ) ;
в противном случае
дисп ( '1, иначе' ) ;
конец
случай 2
переключатель у
случай 2
дисп ( '2, 2' ) ;
случай 3
дисп ( '23' ) ;
в противном случае
дисп ( '2, иначе' ) ;
конец
в противном случае
дисп ( 'в противном случае' ) ;
конец
Этот код MATLAB определяет две переменные с именами x и y. Значение x равно 2, а y равно 3. Затем он использует вложенную структуру switch-case для оценки значений x и y. В зависимости от значений в качестве вывода отображаются различные сообщения. В этом случае код выведет 2, 3, так как x равно 2, а y равно 3.
Расчет оценок по математическому предмету с использованием вложенного переключателя в MATLAB
Теперь мы будем назначать ученикам оценки в зависимости от их оценок с помощью вложенного переключателя в MATLAB.
тема = «Математика» ;
оценка = 85 ;
класс = '' ;
сменить тему
случай «Математика»
выключатель истинный
случай счет > '=' 90 && оценка = 80 && счет < '=' 89
класс = 'Б' ;
дисп ( «Оценка колеблется между 80 и 89. Оценка: B» ) ;
в противном случае
класс = 'С' ;
дисп ( «Оценка ниже 80. Оценка: C» ) ;
конец
случай 'Английский'
% обрабатывать оценки по английскому языку
в противном случае
% заниматься другими предметами
конец
Этот код MATLAB вычисляет оценку по математическому предмету на основе заданного балла. В коде используются вложенные операторы switch для определения оценки на основе диапазонов оценок. Если оценка падает между 90 и 100, оценка устанавливается на A. Если она падает между 80 и 89, оценка устанавливается на B. В противном случае, если оценка ниже 80, оценка устанавливается на C. Код также включает соответствующие операторы disp() для отображения оценки и диапазона оценок.
Заключение
Используя вложенные операторы switch в MATLAB, мы можем проектировать сложные структуры решений. Они допускают условное выполнение операторов внутреннего переключателя на основе случаев внешнего переключателя. Это позволяет обрабатывать несколько переменных и условий в одном блоке кода, повышая удобочитаемость и эффективность кода.