Иллюстрированный самоучитель по MatLab

Конструкция переключателя

Для осуществления множественного выбора (или ветвления) используется конструкция с переключателем типа switch:

switch switch_Выражение
case case_Выражение
Список_инструкций
case {case_Выражение1, Case_выражение2, case_Выражение3....}
Список_инструкций
otherwise. Список_инструкций end

Если выражение после заголовка switch имеет значение одного из выражений case _Выражение…, то выполняется блок операторов case, в противном случае – список инструкций после оператора otherwise. При выполнении блока case исполняются те списки инструкций, для которых case_Выражение совпадает со switch_Выражением. Обратите внимание на то, что case_Выражение может быть числом, константой, переменной, вектором ячеек или даже строчной переменной. В последнем случае оператор case истинен, если функция strcmp (значение, выражение) возвращает логическое значение "истине".

Поясним применение оператора switch на примере m-файла swl.m:

switch van
case {1.2.3}
disp('Первый квартал')
case {4.5.6}
disp('Второй квартал')
case {7.8.9}
d.isp('Третий квартал')
case {10.11.12}
disp('Четвертый квартал')
otherwise
disp('Ошибка в задании')
end

Эта программа в ответ на значения переменной var – номера месяца – вычисляет, к какому кварталу относится заданный месяц, и выводит соответствующее сообщение:

>> var=2;
>> swl
Первый квартал
>> var=4;swl
Второй квартал
>> var=7:swl
Третий квартал
>> var=12;swl
Четвертый квартал
>> var=-1;swl
Ошибка в задании
Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.