
Методы вычисления. Лекция 1 (Part_1)
.pdf
Операторы и функции Функции пользователя
Способы задания функции
inline функции;
анонимные функции;
файл-функции (m-файлы).
Юдинцев В. В. (ТМ, СГАУ) |
Основы MATLAB |
11 февраля 2012 г. |
31 / 40 |

Операторы и функции Функции пользователя
inline-функция
f1 = inline(’x1^2+x2^2’,’x1’,’x2’)
Использование:
f1(4,2)
Особенности
Переменные из рабочей области недоступны
Юдинцев В. В. (ТМ, СГАУ) |
Основы MATLAB |
11 февраля 2012 г. |
32 / 40 |

Операторы и функции Функции пользователя
Анонимная функция
f = @ (x1,x2) x1^2+x2^2
Использование:
f(4,2)
Особенности
Переменные из рабочей области доступны, но рассматриваются как константы
a=2;
f = @ (x1) a*x1 f(1)
> 2
a=2; f(1) > 2
Юдинцев В. В. (ТМ, СГАУ) |
Основы MATLAB |
11 февраля 2012 г. |
33 / 40 |

Задачи

Задачи
Задание 1.
Напишите кратчайшее однострочное выражение для построения квадратной матрицы вида
2 |
1 |
2 |
3 |
4 |
: : : |
n3 |
|
1 |
2 |
3 |
4 |
: : : |
n |
6: : : : : : : : : : : : : : : |
n7 |
|
6 |
1 2 3 4 : : : |
n7 |
4 |
|
5 |
Напишите выражение, определяющее индекс элемента вектора с наибольшим отклонением от среднего значения элементов вектора i : maxjPi m(P)j.
Юдинцев В. В. (ТМ, СГАУ) |
Основы MATLAB |
11 февраля 2012 г. |
35 / 40 |

Задачи
Задание 2.
Напишите кратчайшее однострочное выражение для построения квадратной матрицы вида
2 |
0 |
2 |
3 |
4 |
|
: : : |
n3 |
|
1 |
2 |
3 |
4 |
|
: : : |
n |
6: : : : : : |
:: :: :: |
: : : : : : |
n7 |
||||
6 |
0 |
0 |
|
0 |
n |
|
1 n7 |
6 |
0 |
0 |
0 |
0 |
|
7 |
|
6 |
|
0 |
n7 |
||||
4 |
|
|
|
|
|
|
5 |
Найдите матрицу B, которая отличается от матрицы A перестановкой столбцов по возрастанию суммы элементов столбца.
Юдинцев В. В. (ТМ, СГАУ) |
Основы MATLAB |
11 февраля 2012 г. |
36 / 40 |

Задачи
Задание 3.
Постройте последовательность целых чисел от 1 до n и найдите сумму четных чисел
Напишите анонимную и встроенную (inline) функции для генерации арифметической прогрессии ai = a0 + b i
Найдите площадь треугольника, координаты вершин которого записаны в матрице C:
C = [x1,y1; x2,y2, x3,y3];
Юдинцев В. В. (ТМ, СГАУ) |
Основы MATLAB |
11 февраля 2012 г. |
37 / 40 |

Задачи
Задание 4.
Напишите анонимную и встроенную (inline) функции для генерации n первых членов арифметической прогрессии ai = a0 + b i.
Даны два вектора a и b равной длины. Найдите вектор c элементы которого вычисляются как ci = (sin ai + cos bi + a b)2
Юдинцев В. В. (ТМ, СГАУ) |
Основы MATLAB |
11 февраля 2012 г. |
38 / 40 |

Задачи
Задание 5.
дана матрица A координат точек на плоскости: в первом столбе матрицы записаны координаты x, во втором столбце – y. Постройте матрицу B которая составлена из строк матрицы A, так, что с увеличением номера строки с координатами точки растет расстояние от этой точки до начала координат.
Юдинцев В. В. (ТМ, СГАУ) |
Основы MATLAB |
11 февраля 2012 г. |
39 / 40 |

Задачи
Задание 6.
Структура графа описана при помощи списка смежности, записанного в виде матрицы:
L = |
2 |
2 |
4 |
3 |
; |
|
|
1 |
2 |
|
|
|
6: : : : : :7 |
|
|||
|
6 |
|
|
7 |
|
|
4 |
|
|
5 |
|
34
4 |
|
В каждой строке матрицы L записываются |
|||||||||||||||||
|
индексы вершин, связанные дугой. |
||||||||||||||||||
|
|
||||||||||||||||||
|
3 |
Постройте матрицу смежности графа S, |
|||||||||||||||||
|
элемент которой – sij |
отличен от нуля, |
|||||||||||||||||
|
|
||||||||||||||||||
2 |
|
если вершины i и j смежные, т. е. |
|||||||||||||||||
|
соединены дугой. Остальные элементы |
||||||||||||||||||
|
|
||||||||||||||||||
1 |
|
матрицы S равны нулю. |
|||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
Юдинцев В. В. (ТМ, СГАУ) |
|
Основы MATLAB |
|
|
|
11 февраля 2012 г. 40 / 40 |