Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
matlab.doc
Скачиваний:
2
Добавлен:
01.04.2025
Размер:
1.7 Mб
Скачать

Перестановки элементов матриц

Для перестановок элементов матриц служат следующие функции:

  • B=fliplr(A) зеркально переставляет столбцы матрицы А относительно вертикальной оси. Например,

>> f=[1, 2, 3; 5, 45, 3]

f =

1 2 3

5 45 3

>> fliplr(f)

ans =

3 2 1

3 45 5

  • B=flipud(A) зеркально переставляет столбцы матрицы А относительно горизонтальной оси. Например,

>> f=[3, 2, 12; 6, 3, 2]

f =

3 2 12

6 3 2

>> flipud(f)

ans =

6 3 2

3 2 12

  • perms(v) возвращает матрицу v, строки которой есть все возможные перестановки эле-ментов вектора v. Матрица будет содержать n! строк и n столбцов. Например,

>> v=[1 4 6]

v =

1 4 6

>>p=perms(v)

p =

6 4 1

6 1 4

4 6 1

4 1 6

1 4 6

1 6 4

л а б о р а т о р н а я р а б о т а № 3

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

  2. Удалите третью строку матрицы А.

  3. Удалите первый столбец матрицы А.

  4. Постройте матрицу В, состоящую из следующих элементов: первый элемент первой строки представляет собой элементы матрицы А, умноженные на 5; второй элемент первой строки представляет собой элементы матрицы А, к каждому из которых прибавлено число 10; первый элемент второй строки представляет собой элементы матрицы А, деленные на 6, а второй элемент второй строки представляет собой элементы матрицы А.

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

  6. Создайте матрицу D размером 4х5, состоящую из единиц.

  7. Создайте матрицу E того же размера, но состоящую из нулей.

  8. Введите матрицу S размером 6х6, содержащую произвольные элементы.

  9. Выделите главную диагональ этой матрицы.

  10. Получите вектор столбец, содержащий элементы k=2-ой диагонали матрицы S.

  11. Получите вектор столбец, содержащий элементы k=-3-ой диагонали матрицы S.

  12. Получите матрицу размером 5х5, у которой на главной диагонали размещены элементы 2, 5, 1, 6, 7, а все остальные элементы – нули.

  13. Запишите как изменится размерность матрицы, если расположить эти элементы на диагонали k=3.

  14. Расположите эти элементы на диагонали k=-4.

  15. Введите матрицу Z размером 4х4, состоящую из произвольных элементов.

  16. Получите новую матрицу ZZ, зеркально переставив столбцы матрицы Z относительно вертикальной оси.

  17. Получите матрицу ZZZ, зеркально переставив столбцы матрицы Z относительно вертикальной оси.

  18. Введите векор-строку, содержащую следующие элементы 8, 4, 6.

  19. Получите матрицу Н, строки которой есть все возможные перестановки элементов8, 4 и 6.

  20. Добавьте к этой матрице строку, содержащую следующие элементы 10, 20 и 30.

Л е к ц и я № 7, 8

Операции с векторами и матрицами

Вычисление произведений

Несколько простых функций служат для перемножения элементов массивов:

  • prod(A) возвращает произведение элементов массива, если А – вектор, или вектор-стро-ку, содержащую произведения элементов каждого столбца, если А – матрица;

  • prod(A, dim) возращает произведение элементов массива А по столбцам или по стро-кам в зависимости от скаляра dim.

Например,

>> A=[1 2 3 4; 2 4 5 7; 6 8 3 4]

A =

1 2 3 4

2 4 5 7

6 8 3 4

>>B=prod(A)

B =

12 64 45 112

  • cumprod(A) возвращает произведение с накоплением. Если А – вектор, cumprod(A) возвращает вектор, содержащий произведение с накоплением элементов вектора А. Если А – матрица, cumprod(A) возвращает матрицу того же размера, что и А, содержа-щую произведения с накоплением для каждого столбца матрицы А;

  • cumprod(A, dim) возвращает произведение с накоплением элементов по строкам или столбцам матрицы в зависимости от скаляра dim. Например, cumprod(A, 1) дает при-рост первому индексу (номеру строки), таким образом выполняя умножение по столб-цам матрицы А.

Например,

>> A=[1 2 3; 4 5 6; 7 8 9]

A =

1 2 3

4 5 6

7 8 9

>>B=cumprod(A)

B =

1 2 3

4 10 18

28 80 162

>> B=cumprod(A, 1)

B =

1 2 3

4 10 18

28 80 162

>> B=cumprod(A, 2)

B =

1 2 6

4 20 120

7 56 504

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]