- •Средства программирования Практически невозможно предусмотреть в одной системе возможность решения всех задач. Поэтому программирование расширяет возможности системы matlab.
- •Основные средства программирования
- •Структура и свойства файлов сценариев
- •Тело файла с любыми выражениями
- •Структура и свойства файлов функций Файл функция – это типичный объект языка программирования системы matlab.
- •Локальные переменные могут иметь те же имена, что и глобальные.
- •Управляющие структуры
- •Выводится в командное окно. Возможны - ошибки (остановка вычислений), - предупреждения (останова нет).
- •Примеры применения операторов программирования
- •9. Графика
- •Построение графиков отрезками прямых
- •Значения строковой константы s
- •Функция plotyy (график, две оси у)
- •Отображение нескольких графиков в одном окне
- •Графика в логарифмическом масштабе
- •Столбцовые диаграммы
- •Гистограммы
- •Лестничные графики
- •Графики дискретных отсчетов функции
- •График с зонами погрешности
- •Трехмерная графика
- •Графика 3d
- •Круговые диаграммы
Управляющие структуры
Условный оператор
Простейший формат
if <условие>
Инструкции;
end;
Полный формат
if <условие>
Инструкции_1;
else Инструкции_2;
end;
Вложенный формат
If <условие_1>
Инструкции_1;
elseif <условие_2>;
Инструкции_2;
else Инструкции_3;
end;
Групп elseif <условие> может быть много.
Переключатель
Применяется для множественного ветвления
Формат оператора
switch <Селектор>
case {Список значений}
Список инструкций_1;
case {Список значений}
Список инструкций_2;
…..
otherwise
Список инструкций_N;
end
Цикл for …end
Цикл с заданным числом повторений
Формат оператора
for var=<выражение>
Инструкция_1, Инструкция_2;
end;
Цикл while …end
Цикл с неизвестным числом повторений
Формат оператора
while<выражение>
Инструкция_1, Инструкция_2;
end;
В ычислить заданную функцию, в интервале -3..3 с шагом 0,5
>> % Программирование в MATLAB
>> a=-3; % Начальное значение
> > b=3; % Конечное значение
>> h=0.5; % Шаг
>> N=(b-a)/h; % Количество точек
>> X=a:h:b; % Ранжированная переменная
>> for n=1:N+1 % Программа расчета функции
if X(n)<0 Y(n)=X(n)^2; else Y(n)=5*sin(X(n)); end;
end;
>> X
X = % Вывод аргумента
Columns 1 through 7
-3.0000 -2.5000 -2.0000 -1.5000 -1.0000 -0.5000 0
Columns 8 through 13
0.5000 1.0000 1.5000 2.0000 2.5000 3.0000
>> Y
Y = % Вывод значений функции
Columns 1 through 7
9.0000 6.2500 4.0000 2.2500 1.0000 0.2500 0
Columns 8 through 13
2.3971 4.2074 4.9875 4.5465 2.9924 0.7056
>> figure(2); % Окно графика
>> plot(X,Y,'-m'); % График
>> title('Grafik X-Y'); % Заголовок
>> grid on; % Включить сетку
Вычислить заданную функцию, в интервале -3..5 с шагом 0,5
>> % Вычислить функцию
> > a=-3; % Начальное значение
>> b=5; % Конечное значение
>> h=0.5; % Шаг
>> N=(b-a)/h; % Количество точек
>> X=a:h:b; % Ранжированная переменная
>> for n=1:N+1 % Программа расчета функции
if X(n)<0 T(n)=X(n)^2;
elseif X(n)>2 T(n)= 5*sin(X(n));
else T(n)=0; end;
end;
>> figure(1); % Окно графика
>> plot(X,T,'r'); % График
>> title('Grafik X-T'); % Заголовок
>> grid on; % Включить сетку
>>
Ошибочный вариант:
>> for n=1:N+1
if X(n)<0 T(n)=X(n)^2;
elseif X(n)>2 T(n)= 5*sin(X(n));
else T(n)='no'; end;
end;
??? In an assignment A(I) = B, the number of elements in B and I must be the same.
Сообщения об ошибках
Выводится в командное окно. Возможны - ошибки (остановка вычислений), - предупреждения (останова нет).
Операторы ошибок: error (с остановкой программы), warning (предупреждение)