Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МУ_ИТ_Практич_занятия.doc
Скачиваний:
7
Добавлен:
15.11.2019
Размер:
299 Кб
Скачать
☆

Задания на векторы

В следующих заданиях необходимо придумать универсальный способ решения, пригодный для произвольных векторов, и протестировать его на различных показательных примерах.

1. Переставить элементы вектора в обратном порядке, используя индексацию подходящим вектором, и записать результат в новый вектор.

2. Выделить в новый вектор элементы вектора с четными номерами.

3. Найти сумму только положительных элементов вектора.

4. Заменить элементы вектора, отличающиеся от среднего геометрического его элементов более чем на 10%, на среднее геометрическое.

5. Заменить все минимальные элементы вектора максимальным значением его элементов.

6. Найти число положительных и отрицательных элементов вектора.

Задания на матрицы

  1. Задана квадратная матрица

.

Элементы матрицы A обозначим . Требуется узнать и записать размер матрицы в переменную n (конечно он равен 3, но лучше использовать функцию для автоматического определения размера) и вычислить приведенные ниже величины (нормы матрицы):

.

  1. При помощи встроенных функций для заполнения стандартных матриц, индексации двоеточием и, возможно, поворота, транспонирования получите следующие матрицы:

; ;

;

.

M-файлы

До этого мы рассматривали достаточно простые примеры, для выполнения которых требуется набрать несколько команд в командной строке. Для более сложных задач число команд возрастает, и работа в командной строке становится непродуктивной. Использование истории команд незначительно повышает производительность работы. Эффективное решение состоит в оформлении собственных алгоритмов в виде программ (M-файлов), которые можно запустить из рабочей среды или из редактора. Встроенный в MATLAB редактор M-файлов позволяет не только набирать текст программы и запускать ее целиком или частями, но и отлаживать алгоритм.

Работа в редакторе m-файлов

Раскройте меню File рабочей среды MATLAB и в пункте New выберете подпункт M-файл или нажмите кнопку New M-file на панели инструментов рабочей среды. Новый файл открывается в окне редактора M-файлов, которое приведено на рис. 3.

Рис. 3. Окно редактора M-файлов MATLAB

Наберем в редакторе команды для построения двух графиков на разных осях в одном графическом окне. Не обязательно набирать много команд – наша цель сейчас состоит в том, чтобы научиться выполнять команды из редактора M-файлов. Ограничимся командами, приведенными в листинге 1.

Листинг 1. Команды для построения графиков

x=0:0.1:7;

f=exp(-x);

subplot(1, 2, 1)

plot(x,f)

g=sin(x);

subplot(1, 2, 2)

plot(x, g)

Сохраним теперь файл с именем mydemo.m в подкатологе work основного каталога MATLAB, выбрав в меню File редактора пункт Save as. Для запуска на выполнение всех команд, содержащихся в файле, следует выбрать пункт Run в меню Debug, или просто нажать <F5>. На экране появится графическое окно Figure 1, содержащее графики функций. Результат эквивалентен последовательному выполнению команд листинга 1 в командном окне.

Если в M-файле при наборе сделана ошибка, то она выявляется в процессе исполнения. MATLAB выполняет команды до неправильно введенной, после чего в командное окно выводится сообщение об ошибке. Создайте в редакторе новый файл mydemo2.m со следующими командами:

y=[1 2 3]

z=y*y

x=y

Очевидно, что во второй строке допущена ошибка. Попытка выполнения такого файла приведет к выводу в командное окно следующего сообщения с гиперссылкой на место ошибки:

??? Error using ==> mtimes

Inner matrix dimensions must agree.

Error in ==> Untitled2 at 2

z=y*y

Щелчок мыши по гиперссылке с именем M-файла делает окно редактора активным и помещает курсор в строку с ошибкой.