Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
цос / Лаб_раб_ №1.doc
Скачиваний:
75
Добавлен:
02.02.2015
Размер:
258.05 Кб
Скачать

If условие

группа операторов 1;

else

группа операторов 2;

end

В этом случае пока выполняется условие, реализуется группа операторов 1; в противном случае выполняется группа операторов 2.

Возможен частный случай условного выражения в виде:

If условие

группа операторов;

end.

В сложных условных выражениях оператор if используется совместно с оператором elseif. Рассмотрим пример, иллюстрирующий реализацию функции y=f(x), представляющей характеристику линейного звена с ог­раничением

if abs(x)<1

y=x;

elseif x>1

y=1;

else

y=-1;

end

2.2 Ввод исходных данных и вывод результатов

В пакете Matlab ввод исходных данных осуществляется с помощью оператора input. Выражение N= input ('введите N ') обеспечивает вывод в окно символьной строки и ожидание ввода требуемого числа N с клавиатуры. После того, как число будет набрано и нажата клавиша ENTER, работа по программе будет продолжена. Для ввода с клавиатуры матрицы или вектора пользователь должен использовать скобки вида [].

Для вывода информации на экран дисплея можно использовать оператор disp. Например, последовательность операторов

disp('Вывод матрицы А:')

A = [1 2 3; 4 5 6]; disp(А)

обеспечит вывод на экран сообщения:

Вывод матрицы А:

1 2 3

4 5 6

Символ ";" после оператора присваивания запрещает вывод на экран результата вычисления. Если символ ";" отсутствует, результат вычислений по умолчанию выводится на экран дисплея. Если при этом имя переменной или знак = опущены, то результат вычислений автоматически присваивается переменной ans. В предыдущем примере можно отказаться от оператора disp(A), если убрать символ ";" в предыдущей строке.

Пакет Matlab позволяет сформировать файл результатов, полученных в процессе выполнения программы, с помощью команд diary имя файла, diary off, diary on. Например, команда diary dat обеспечивает запись всех числовых результатов, полученных в последующих за этой командой операторах и выводимых на экран дисплея вплоть до команды diary off в файл с именем dat. Следует обратить внимание на то, что имя файла результатов не имеет расширения. Команда diary on вызовет продолже­ние формирование файла результатов. По окончании выполнения программы можно провести редактирование этого файла.

3. Графика

Среда пакета Matlab дает широкие возможности для построения графиков, в том числе двух - и трехмерных. Для вывода графиков может быть использована команда plot. Команда plot(X) изображает вектор X как функцию индекса. Возможно задание цвета графика, используемых символов (сплошная черта, точка, пунктир и т.д.), а также текстовых надписей. Например, plot(Y,'w'), title('Y'); изображает график зависимости Y от индекса белым цветом (white) с надписью 'Y'.

Команда plot(X,Y),где X и Y - вектора, создает график Y как функцию от X. Команда semilogX и semilogY создают график с полулога­рифмической шкалой либо по X (по Y -линейной), либо по Y (по X-линейной). Команда loglog создает график с логарифмическим масштабом по обеим осям.

Команда polar(X,Y) создает график в полярных координатах, команда bar-полосовые диаграммы.

Команда mesh(Z), где Z - двумерный массив значений функции z=f(x,y), обеспечивает построение трехмерных поверхностей.

Возможен вывод на экран одновременно до четырех различных графиков оператором subplot. Предварительно экран дисплея должен быть очищен оператором clg. Например, последовательность операторов

clg; % структура экрана

subplot(221),plot(X'),title('X'); % --------------

subplot(222),plot(Y'),title('Y'); % | 221 | 222 |

subplot(223),plot(Z),title('Z'); % -------------

subplot(224),plot(W),title('W'); % | 223 | 224 |

pause; % -------------

осуществляет вывод на экран дисплея одновременно четырех графиков зависимостей X, Y, Z, W, из которых X и Y представлены строкой, а Z и W столбцом. Операторы subplot(211) subplot(212) осуществляют вывод двух графиков, разделяя экран дисплея по горизонтали, а операторы subplot(121) subplot(122) разделяют экран на две части по вертикали.

Формирование пояснений к графику с помощью функций title, xlabel, ylabel:

t=0:0.01:2*pi;y=sin(t);

plot(t,y),grid,title('Синусоида'),xlabel('радианы'),

ylabel('функция'),gtext('t'),gtext('y')

Формирование пояснений к начертанию нескольких графиков с помощью функции legend:

t=0:0.01:2*pi;y1=sin(t);y2=cos(t);

plot(t,y1,'r'),grid,hold on,plot(t,y2), legend('s1','c2')

Установка ярлыка legend в различных частях графика:

в левом верхнем углу: legend('s1','c2', 2);

в левом нижнем углу: legend('s1','c2', 3);

в правом нижнем углу: legend('s1','c2', 4);

в правом верхнем углу: legend('s1','c2', 1)

или по умолчанию: legend('s1','c2');

вне рабочей области графика: legend('s1','c2', -1);

Соседние файлы в папке цос