Сделай Сам Свою Работу на 5

Примеры использования команд ветвления.





Лабораторная работа №2

 

КОМАНДЫ ВЕТВЛЕНИЯ

Цель работы: знакомство с конструкциями if-else, switch.

 

Введение

Помимо программ с линейной структурой, инструкции которых исполняются строго по порядку, существует множество программ, структура которых нелинейна. При этом ветви программ могут выполняться в зависимости от определенных условий, иногда с конечным числом повторений — циклов, иногда в виде циклов, завершаемых при выполнении заданного условия.

Практически любая серьезная программа имеет нелинейную структуру. Для создания таких программ необходимы специальные управляющие структуры. К таким управляющим структурам в языке MATLAB относятся условные операторы.

 

Оператор if

Оператор if вычисляет логическое выражение и выполняет группу операторов, если выражение истинно. Необязательные ключевые слова elseif и else служат для выполнения альтернативных групп операторов. Ключевое слово end, которое согласуется с if, завершает последнюю группу операторов. Таким образом, все группы операторов заключены между четырех ключевых слов.

if <условие>

<операторы>



end

 

if <условие>

<операторы>

else

<операторы>

end

 

if <условие>

<операторы>

elseif <условие>

<операторы>

else

<операторы>

end

 

Следующие знаки используются в условии для сравнения двух выражений между собой:

< Меньше
<= Меньше либо равно
> Больше
>= Больше либо равно
== Равно
~= Не равно

При необходимости можно объединять в одном условии несколько операторов сравнения используя операции:

· && - И

· || - ИЛИ

Например if(A>1 && B<1) …

 

Оператор swith

При необходимости построить конструкцию ветвления с более чем двумя логическими условиями удобнее использовать не вложенные операторы if, а оператор переключения switch ... Case. Он выполняет группу операторов, базируясь на значении переменной или выражения. Ключевые слова case и otherwise разделяют эти группы. Выполняется только первый соответствующий случай. Необходимо использовать end для согласования с switch. Этот оператор имеет следующую структуру:



switch <выражение>

case <значение1>

<операторы первой группы>

case <значение2>

<операторы второй группы >

...

otherwise

<операторы по умолчанию>

end

Оператор переключения включает:

· Заголовок switch, за которым следует вычисляемое выражение (скаляр или строка).

· Произвольное количество групп case; Заголовок группы состоят из слова case, за которым следует возможное значение выражения, расположенное на одной строке. Последующие строки содержат инструкции, которые выполняются для данного значения выражения. Выполнение продолжается до тех пор, пока не встретится следующий оператор case или оператор otherwise. На этом выполнение блока switch завершается

· Группа otherwise. Заголовок включает только слово otherwise, начиная со следующей строки размещаются инструкции, которые выполняются, если значение выражения оказалось не обработанным ни одной из групп case. Выполнение завершается оператором end.

· Оператор end является последним в блоке переключателя.

 

Примеры использования команд ветвления.

Синтаксис Пример Комментарии
if <логическое выражение> <операторы> end if x>0 y=x+2; end Упрощенная форма записи команды if (отсутствует ветка else). Выражение y=x+2 выполнится только в том случае, если x окажется больше нуля.
if <логическое выражение> <операторы> else <операторы> end if A B=A*C; else B=C; end Полная форма записи команды if. Если существует A (то есть значение А отлично от нуля), то выполняется выражение B=A*C, в противном случае выполнится выражение B=C.
if <логическое выражение> <операторы> elseif <логическое выражение> <операторы> end if A>0 B=1; elseif A<0 B=-1; else B=0; end Расширенная форма записи команды if. B будет присвоено значение 1, если значение A положительно. Если значение А отрицательно, то B будет присвоено -1. В противном случае (A=0), B будет присвоено значение 0.
switch <выражение> case значение1 <операторы> case значение2 <операторы> case значение3 <операторы> otherwise <операторы> end switch A case -10 B=32; case 10 B=64; case 20 B=128; otherwise B=0; end В зависимости от значения A (-10,10,20 или любое другое) B примет значение (32,64, 128 или 0).

 



 

 








Не нашли, что искали? Воспользуйтесь поиском по сайту:



©2015 - 2024 stydopedia.ru Все материалы защищены законодательством РФ.