Построение циклических структур в MatLab

Построение циклических структур основано на следующих конструкциях:

1. В таблице 1.2 представлены операции отношения.

Табл. 1.2. Операции отношения.

Обозначение Операция отношения
== Равенство
< Меньше
<= Меньше или равно
>= Больше или равно
> Больше
~= Не равно

 

Задание более сложных условий производится с применением логических операторов (табл. 13).

Табл. 1.3. Логические операторы

Оператор Условие Эквивалентная запись
Логическое «и» x<=5 и x>-5 (x<=3)&&(x>-4)
Логическое «или» x=1 или x=2 (x==1) | (x==2)
Отрицание «не» a≠5 ~(a==5)

2. Оператор проверки условия, позволяющий организовать разветвление исполнения программы на два направления в зависимости от истинности условия. Синтаксис:

if <выражение 1>

<операторы 1> % выполняются, если истинно <выражение 1>;

elseif <выражение 2>

<операторы 2> % выполняются, если ложно <выражение 1> и истинно <выражение 2>;

……………………..

elseif <выражение N>

<операторы N> % выполняются, если ложны <выражение 1> и <выражение 2> и……..и <выражение N-1> и истинно <выражение N>;

else

<операторы N+1> % выполняются, если ложны <выражение 1> и <выражение 2> и……..и <выражение N>;

end;

 

В зависимости от выполнения того или иного условия работает соответствующая ветвь программы, если все условия неверны, то выполняются команды, размещенные после else.

y=10;

x = randi([0 20]);

if x > y

disp(1); % выполняется, если x > y

elseif x < y

disp(-1); % выполняется, если x < y

else

disp(0); % выполняется, если x = y

end;

 

3. Оператор switch... case 1... case k... otherwise... end выполняет ветвления, в зависимости от значений некоторой переменной или выражения.

Синтаксис:

switch <выражение> % выражение - скаляр или строка

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

<операторы 1> % выполняются,

если < выражение> == <значение 1>

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

<операторы 2> % выполняются,

если <выражение> == <значение 2>

………………..

otherwise

<операторы N> % выполняются,

если <выражение> не совпало ни с одним из значений

end;

 

x = randi([1 5]);

switch x

case 1

disp('один')

case 2

disp('два')

case 3

disp('три')

otherwise

disp('другое значение')

end;

 

4. Цикл с заданным количеством повторений. Синтаксис:

for count=start:step:final

<тело цикла>

end;

где

- count – переменная цикла;

- start – начальное значение переменной цикла;

- final – конечное значение переменной цикла;

- step – шаг, на который увеличивается count при каждом следующем заходе в цикл (step не является обязательным, по умолчанию ster=1), цикл заканчивается, как только значение count становится больше final$

- <тело цикла> операторы MatLab. Тело цикла обязательно заканчивается служебным словом end.

 

j=1;

for i=1:0.1:10

x(j)=2*i^2;

end;

 

5. Цикл с неизвестным количеством повторений. Синтаксис:

while <условие>

<тело цикла> % выполняется пока истинно условие цикла;

end;

Тело цикла обязательно заканчивается служебным словом end.

 

a=100;

y=1;

while y<=a

y=y+1;

end;

6. Оператора прерывания цикла break. При выполнении оператора break работа цикла завершается и управление передается на следующий после конца цикла оператор.

 

for i=1:100

a(i)=i^2;

if a(i) == 225

break

end;

b(i)=a(i)*2;

end;

 

Общая постановка задачи

В соответствии с Вашим вариантом необходимо выполнить:

1. Вычислить значение выражения.

2. Построить график функции y=f(x).

3. Сгенерировать матрицы чисел и реализовать операции над ними.

4. Написать файл-программу.

 


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: