
Лабораторна робота № 4
Тема: Багатовимірні обчислення і візуалізація результатів в середовищі Matlab|
Мета: вивчити правила використання операторів управління, правила організація вкладених циклів, правила отримання багатовимірних результатів, виведення багатовимірних даних в табличній формі; об'ємна графіка, контурна графіка; навчитися розробляти алгоритми вирішення завдань з варіанту завдання та скласдати програми вирішення завдань.
Теоретична частина
Існують чотири основні оператори управління послідовністю виконання інструкцій:
-
оператор умови if|, у поєднанні з оператором else| і elseif| виконує групу інструкцій відповідно до деяких логічних умов;
-
оператор перемикання switch|, у поєднанні з операторами case| і otherwise| виконує різні групи інструкцій залежно від значення деякої логічної умови;
-
оператор умови while| виконує групу інструкцій невизначене число разів, відповідно до деякої логічної умови завершення;
-
оператор циклу for| виконує групу інструкцій фіксоване число разів. Всі оператори управління включають оператор end|, щоб вказати кінець блоку, в якому діє цей оператор управління.
1. Оператор умови
Оператор умови if| .... end| обчислює деякий логічний вираз і виконує відповідну групу інструкцій залежно від значення цього виразу. Якщо логічний вираз істинний, то MATLAB| виконає всі інструкції між if| і end|, а потім продовжить виконання програми в рядку після end|. Якщо умова помилкова, то MATLAB| пропускає всі твердження між if| і end| і продовжить виконання в рядку після end|.
Оператори if| ... else| ... end| і if| ... elseif| ... end| створюють додаткові галуження усередині тіла оператора if|:
Оператор else| не містить логічної умови. Інструкції, пов'язані з ним, виконуються, якщо попередній оператор if| (і можливо elseif| ) помилкові. Оператора elseif| містить логічна умова, яка обчислюється, якщо попередній оператор if| (і можливо elseif|) помилкові. Інструкції, пов'язані з оператором elseif| виконуються, якщо відповідна логічна умова істинна.
Оператор elseif| може багато разів використовуватися усередині оператора умови if|.
2. Оператор перемикання (переключения)
Синтаксис:
switch| <вираз>
% вираз - це обов'язково скаляр або рядок case| <значенняГ|>
інструкції % виконуються, якщо < вираз> =< значення1|> case| <значення2|>
інструкції % виконуються, якщо <вираз> = < значення2|>
otherwise|
інструкції
% виконуються, якщо <вираз> не співпав ні з одним із значень
end|
Оператор switch| ... case| l ... case| до ... otherwise| ... end| виконує галуження, в зависмости| від значень деякої змінної або виразу. Оператор перемикання включає:
-
Заголовок switch|, за яким слідує обчислюваний вираз (скаляр або рядок).
-
Довільна кількість груп case|; Заголовок групи складаються із слова case|, за яким слідує можливе значення виразу, розташоване на одному рядку. Подальші рядки містять інструкції, які виконуються для даного значення виразу. Виконання продовжується до тих пір, поки не зустрінеться наступний оператор case| або оператор otherwise|. На цьому виконання блоку switch| завершується
-
Група otherwise|. Заголовок включає тільки слово otherwise|, починаючи з наступного рядка розміщуються інструкції, які виконуються, якщо значення виразу виявилося не обробленим жодній з груп case|. Виконання завершується оператором end|.
-
Оператор end| є останнім в блоці перемикача.
Оператор switch| працює, порівнюючи значення обчисленого виразу із значеннями груп case|. Для числових виразів оператор case| виконується, якщо <значення>==| <вираз>. Для строкових виразів, оператор case| істинний, якщо strcmp|(значення, вираз) істинно.