Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Искуственный интелект / ШІ / files / Лабораторна робота 4.doc
Скачиваний:
50
Добавлен:
30.05.2020
Размер:
1.62 Mб
Скачать

Лабораторна робота № 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|(значення, вираз) істинно.