Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
matlab_shpora.doc
Скачиваний:
3
Добавлен:
01.03.2025
Размер:
1.52 Mб
Скачать
  1. Операторы break,continue

Циклы for и while можно прервать, если применить оператор break

внутри тела цикла. Передать управление следующей итерации обоих циклов

можно при помощи оператора continue.

В отличие от языка C++ после выполнения какой-

либо из ветвей case происходит обязательный выход из оператора switch.

При этом значения, заданные в других case, уже не проверяются, поэтому

в конструкции нет необходимости использовать оператор break.

appl = 'MatLab';

switch upper(appl)

case {'MATLAB','MATHCAD'}

disp('Application is numeric')

case {'MAPLE','MATHEMATICA'}

disp('Application is symbolic')

otherwise

disp('Unknown application')

end

  1. Векторизация алгоритма

Для повышения эффективности программы очень важно векторизовать

алгоритм. Везде, где это возможно, вместо операторов цикла лучше

применять эквивалентные по результатам векторные или матричные

операции, так как последние исполняются в системе MATLAB быстрее

Например, вместо

k =0;

for x = 0:0.01:2*pi

k = k+1; y(k) =cos(x);

end

лучше использовать векторизованную версию кода:

x = 0:0.01:2*pi; y=cos(x);

так как такой код быстрее исполняется и записывается короче.

  1. Обработка исключительных ситуаций

В MATLAB в отличие от многих языков программирования выполнение

некоторых некорректных математические операций не приводит к

завершению программы. Так, при делении положительного числа на

ну ль получается Inf(бесконечность), при делении отрицательного

числа на нуль получается – Inf(минус беско нечность), при делении

нуля на нуль получается NaN( Not-a-Number–не число). Во всех

случаях выдается предупреждение об ошибке “ Warning: Divide by zero”.

При этом программа не прекращает своей работы. Но встречаются так

называемые исключительные ситуации–ошибки, приводящие к завершению

программы. В этих случаях использование конструкци и try…catch позволяет

выделить и обработать такие ситуации, выполнив некоторые действия в случае

возникновения.

try,

statement,

...,

statement,

catch,

statement,

...,

statement,

end

Операторы, выполнение которых может привести к ошибке, заключаются в

конструкцию между try и catch. Если эти операторы выполняются без ошибок,

то после них управление передается первой команде, стоящей после ключевого

слова end. Если возникает ошибка во время выполнения любого из этих

операторов, то управление передается блоку, заключенному между ключевыми

словами catch и end . Если и здесь встречается ошибка, то выполнение программы

прекращается.

Тема 4.

  1. Режимы работы MatLab

Работа в интерактивном режиме требует постоянного ввода команд в

командной строке с клавиатуры. Такой режим удобен для выполнения

простых операций. Но если объем операций велик, вычисления нужно

повторять многократно или необходимо реализовать сложные алгоритмы,

то работа из командной строки затрудняется. В этих случаях самым

удобным способом выполнения команд MATLAB является оформление

их в виде M-файлов. Последовательность команд набирают и сохраняют

в текстовых файлах, дополняют их комментариями и выполняют из редактора

M-файлов или запускают из командной строки в командном окне Command

Window. Для работы с M-файлами предназначен встроенный текстовый

Редактор M-файлов, который вызывается командой меню File| New ► M - file

и работает в своем собственном окне, обеспечивая создание, редактирование,

запуск и отладку кода.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]