Циклы типа for…end. Циклы типа while…end.
Циклы типа for…end обычно используются для организации вычислений с заданным числом повторяющихся циклов. Конструкция такого цикла имеет следующий вид:
for var=Выражение. Инструкция..... Инструкция endВыражение чаще всего записывается в виде s:d:e, где s – начальное значение переменной цикла var, d – приращение этой переменной и е – конечное значение управляющей переменной, при достижении которого цикл завершается. Возможна и запись в виде s:е (в этом случае d=1). Список выполняемых в цикле инструкций завершается оператором end.
Следующие примеры поясняют применение цикла для получения квадратов значений переменной цикла:
>> for 1=1:5 i^2, end; ans =1ans =4ans =9ans =16ans =25>> for x=0:.25:1 X ^ 2, end: ans =0ans =0.0625ans =0.2500ans =0.5625ans =1Оператор continue передает управление в следующую итерацию цикла, пропуская операторы, которые записаны за ним, причем во вложенном цикле он передает управление на следующую итерацию основного цикла. Оператор break может использоваться для досрочного прерывания выполнения цикла. Как только он встречается в программе, цикл прерывается. Возможны вложенные циклы, например:
for i=1:3for j=i:3A(1.j)=i+j; endendВ результате выполнения этого цикла (файл for2.m) формируется матрица А:
>> for2 >> A A =2 3 43 4 54 5 6>>Следует отметить, что формирование матриц с помощью оператора: (двоеточие) обычно занимает намного меньше времени, чем с помощью цикла. Однако применение цикла нередко оказывается более наглядным и понятным. MATLAB допускает использование в качестве переменной цикла массива А размера тхп. При этом цикл выполняется столько раз, сколько столбцов в массиве А, и на каждом шаге переменная var представляет собой вектор, соответствующий текущему столбцу массива А:
>> A=[1 2 3:4 5 6] A =1 2 34 5 6>> for var=A; var, endvar =14var =25var=36Циклы типа while…end
Цикл типа while выполняется до тех пор, пока выполняется Условие:
while Условие Инструкции endПример применения цикла while уже приводился. Досрочное завершение циклов реализуется с помощью операторов break или continue.
