Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Числ_методы_I_(лаб).doc
Скачиваний:
217
Добавлен:
05.06.2015
Размер:
3.44 Mб
Скачать

Оператор двоеточие «:»

При программировании бывает необходимо формирование числовых последовательностей разного вида. В частности, они требуются для создания векторов или значений аргумента хпри построении графиков. В Matlab’е для этого используется оператор двоеточие «, который представляется следующим образом:

х = Начальное_значение:Шаг:Конечное_значение;

Эта конструкция создает возрастающую арифметическую последовательность чисел, которая начинается с начального значения, изменяется на заданный шаг и завершается конечным значением. Эти значения записываются в память ЭВМ в виде массива. Если шаг последовательности не задан, то он принимает значение 1. Если конечное значение указано меньшим, чем начальное значение, то выдается сообщение об ошибке.

Оператор разветвления if

Условный оператор ifв Matlab’е записывается в общем виде следующим образом

if «логическое выражение»

Операторы 1

elseif «логическое выражение»

Операторы 2

else

Операторы 3

end;

Эта конструкция имеет несколько частных вариантов:

if «логическое выражение»

Операторы 1

end;

или

if «логическое выражение»

Операторы 1

else

Операторы 2

end;

В запись Операторымогут входить один или несколько операторов. В последнем случае они разделяются символами «,» (запятой) или «;» (точкой с запятой).

Простое логическое выражение в операторе ifимеет следующую структуру

Выражение 1 «оператор отношения» Выражение 2

где операторы отношения описаны в табл.2. Примером записи одного из вариантов оператора ifможет служить следующая конструкция

if x>=y^2+1

z = sqrt(x^2 + y^2);

t = 1/(x + y^2);

else

z = 0;

t = 0;

end;

Из простых логических выражения могут создаваться сложные с применением логических операций, приведённых в табл.3. Например

if or(and(x>y^2,x<2),x>=4)

Если логическое выражение в операторе ifпринимает значение1(true– истина), то выполняются операторы, следующие за ним. В противном случае, когда логическое выражение принимает значение0(false– ложь), операторы, следующие за логическим условием, не выполняются.

Оператор endуказывает на конец зоны действия условного оператораif.

Операторы циклов

В Matlab’е существует три типа операторов цикла. Один из них – операторfor…endиспользуется для организации цикла с фиксированным числом повторений. Он имеет вид:

for x = выражение

Операторы

end;

Здесь x– счетчик цикла, в качестве которого может быть любая переменная, обычно этоi,j,k,l,mи так далее. Выражение в этом операторе имеет структуру

начальное значение: шаг: конечное значение

Возможна запись в виде

начальное значение: конечное значение

тогда шаг = 1.

Список операторов завершается ключевым словом end, ограничивающим зону действия оператораfor.

С помощью оператора forможно организовывать вложенные циклы, например

for i = 1: 3

for j = 1: 3

a(i,j) = i*j;

end;

end;

В результате выполнения этого двойного цикла формируется матрица

.

Вторым оператором цикла является конструкция типа while…end. Она имеет вид

while «логическое выражение»

Операторы

end;

Её операторывыполняются до тех пор, пока выполняется условие, заданноелогическим выражением.

Здесь следует упомянуть операторы continueиbreak. Операторcontinueпередает управление в следующую итерацию цикла, пропуская операции, которые записаны за ним, а операторbreakиспользуется для досрочного прерывания цикла.