
- •Лабораторная работа №1. Введение в MATLAB
- •Краткая характеристика MATLAB
- •Описание интерфейса MATLAB
- •Работа с MATLAB в режиме командной строки
- •Объявление переменных
- •Удаление созданных переменных
- •Создание матриц и векторов
- •Поэлементные операции над матрицами
- •Основы построения графиков
- •Задания на лабораторную работу
- •Примечание к заданию
- •Варианты задания
- •Лабораторная работа №2. Программы в MATLAB
- •Скрипты
- •Рабочая область в MATLAB
- •Комментарии
- •Функции
- •Фактические и формальные параметры функции
- •Рабочая область функции
- •Скрипты и функции
- •Передача параметров по значению
- •Анонимные функции
- •Документирование функций
- •Отладка
- •Задание на лабораторную работу
- •Варианты заданий
- •Лабораторная работа №3. Условные выражения и циклы
- •Управление потоками в MATLAB
- •Оператор ветвления if/elseif/else
- •Оператор цикла for
- •Оператор цикла while
- •Проверка корректности входных переменных
- •Задания на лабораторную работу
- •Варианты задания
- •Лабораторная работа №4. Вектора и матрицы
- •Создание векторов и матриц в MATLAB.
- •Обращение к элементам матриц.
- •Заполнение матриц
- •Операции деления, умножения и возведения в степень.
- •Создание матриц специального вида
- •Объединение матриц
- •Удаление строк и столбцов
- •Задания на лабораторную работу
- •Лабораторная работа №5. Ввод-вывод
- •Организация ввод-вывод в MATLAB
- •Строки
- •Функция disp
- •Функция input
- •Функция fprintf
- •Организация диалога с пользователем и вывод таблицы с использованием форматированного вывод
- •Задания на лабораторную работу
- •Варианты задания
- •Лабораторная работа №6. Графические возможности в MATLAB
- •Основы графики в MATALB
- •Оформление графиков
- •Вывод нескольких графиков в текущее окно
- •Функция eval
- •Задания на лабораторную работу
- •Варианты задания

% сохранить результат в выходную переменную res = a;
end
Пример использования этой функции:
>>myGCD(78, 66) ans =
6
>>myGCD(32, 48.5)
Error using myGCD (line 6)
Входные аргументы должны быть целыми
Задания на лабораторную работу
В соответствии с номером варианта выбрать функцию и реализовать функцию в MATLAB. Например:
y (x )={∫x1 3 x2 dx , 0≤ x<1
1, −2≤x <0
−
1+ ∞ xn , 1≤x≤2
∑
n=0 n!
Для вычисления интеграла интеграла воспользоваться методом прямоугольников. Шаг интегрирования будет задан в варианте. Суммирование ряда выполнять пока модуль очередного члена не будет меньше заранее заданного числа ε , заданного в варианте. Так же необходимо будет проверять, что входной аргумент x , лежит в допустимом диапазоне
После написания функции, необходимо составить небольшой тестовый скрипт, демонстрирующий работу функции.
Пример выполнения лабораторной работы Дана функция:
{1, −2≤x <0
x
y (x )= ∫−1 3 x2 dx , 0≤ x<1
1+ ∞ xn , 1≤x≤2
∑
n=0 n!
35

Реализация данной функции в MATLAB (файл exmpaleLab3.m):
function [ y ] = exampleLab3( x )
%пример функции для третьей лабораторной работы
%проверка, что x лежит в допустимом диапазоне if x < -2 || x > 2
error('Аргумент функции должен быть в диапазоне [-2; 2]');
end
%шаг интегрирования
dx = 0.0001;
%"точность" вычисления ряда eps = 0.001;
%вычисление функции
if x < 0
% x лежит на интервале [-2; 0) y = 1;
elseif x < 1
%x лежит на интервале [0; 1)
%производим численное интегрирование y = 0;
for z = -1 : dx : x y = y + 3 * z^2;
end
y = y * dx;
else
%x лежит на интервале [1; 2]
%производим суммирование ряда y = 1;
%инициализируем член ряда значением большим eps x_i = 2 * eps;
%номер члена ряда i = 0;
%вспомогательная переменная для вычисления факториала factI = 1;
%вспомогательная переменная для вычисления степеней x xPow = 1;
%производим суммирование
%функция abs берет модуль числа
while abs(x_i) >= eps
% вычисляем значение члена ряда x_i = xPow / factI;
%производим суммирование y = y + x_i;
%обновляем вспомогательные переменные для следующего
члена
i = i + 1;
factI = factI * i;
36