Здесь count – переменная цикла; start – её начальное значение; final – конечное значение; step – шаг на который увеличивается (или уменьшатся) переменная count. Если шаг равен 1, то его можно не указывать.
Например, создадим матрицу Q, размера , элементы которой вычисляются по формуле: , для этого в М-файле hil создадим цикл:
В условии цикла используются операции отношения или логические операторы:
Обозначение
Операции отношения
= =
равенство
< (>)
Меньше (больше)
< = (> =)
Меньше или рано (больше или равно)
~ =
Не равно
Логические операторы
Условие
Запись в MatLab
Эквивалентная запись
Логическое « и »
and (x<3, k = = 4)
(x<3) & (k = = 4)
Логическое « или »
or (x = = 1, x = = 2)
(x = = 1) | (x = = 2)
Логическое « нет »
not ( x = =2)
~ (x = = 2)
Пример. Найдем сумму диагональных элементов матрицы Q. Набираем команды внимательно, чтобы не произошло зацикливание программы. В случае зацикливания надо принудительно прервать выполнение M-файла. Для этого следует нажать клавиши Ctrl+C или Ctrl+Break.
У цикла while нет переменной цикла, в отличие, от цикла for, поэтому пришлось до начала цикла присвоить переменной k значение нуль, а затем увеличивать k на единицу.
Оператор ветвления if.
Оператор ifможет применяться в простом виде
if условие
команды MatLab
end
Например, напишем файл-функцию Rfun для вычисления выражения
В зависимости от выполнения того или иного условия работает соответствующая ветвь программы, если все условия неверны, то выполняются команды, размещенные после else.
Вызовем функцию ifdem с аргументом 1.2:
При организации циклических вычислений следует, позаботься о том, чтобы внутри цикла не возникало ошибок, и не было зацикливания программы. Для досрочного прерывания цикла можно использовать команду break. Оператор break прерывает цикл и происходит выполнение операторов, расположенных в строках следующих за последним end.
Например, напишем программу prch, определяющую является ли заданное число N простым.