Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Practica_otveti2.doc
Скачиваний:
3
Добавлен:
17.04.2019
Размер:
382.98 Кб
Скачать

Применение оператора «:» в многомерных массивах

При обычном задании массивов (с помощью символа точки с запятой «;») число рядов (строк) массива получается на 1 больше, чем число символов «:», но массив остается двумерным. Оператор «:» (двоеточие) позволяет легко выполнять операции по увеличению размерности массивов.

Для добавления новой страницы с тем же размером можно расширить М следующим образом:

» М(:.:.2)=[10 11 12; 13 14 15; 16 17 18]

Доступ к отдельному элементу многомерного массива

Чтобы вызвать центральный элемент сначала первой, а затем второй страницы, надо записать следующие выражения:

» М(2.2,1)

ans =

5

» МС2.2.2)

ans =

14

Таким образом, в многомерных массивах используется то же правило индексации, что и в одномерных и двумерных. Произвольный элемент, например, трехмерного массива задается как М(1 .j.k), где 1 — номер строки, j — номер столбца и k — номер страницы. Этот элемент можно вывести, а можно присвоить ему заданное значение х: М(1 ,j,k)=x.

Удаление размерности в многомерном массиве

удаление отдельных столбцов присвоением им значений пустого вектора-столбца [ ]. Этот прием нетрудно распространить на страницы и вообще размерности многомерного массива.

Создание страниц, заполненных константами и случайными числами

Если после знака присваивания стоит численная константа, то соответствующая часть массива будет содержать элементы, содержащие данную константу

Использование функций ones, zeros, rand и randn

Функции ones (создание массивов с единичными элементами), zeros (создание массивов с нулевыми элементами) и rand или randn (создание массивов с элементами — случайными числами с соответственно равномерным и нормальным распределением) могут также использоваться для создания многомерных массивов.

Объединение массивов

Для создания многомерных массивов служит описанная специальная функция конкатенации cat:

  • cat(DIM,A,B) — возвращает результат объединения двух массивов А и В вдоль размерности DIM;

  • cat(2.A.B) — возвращает массив [А.В], в котором объединены ряды (горизонтальная конкатенация);

  • cat(1, А.В) — возвращает массив [А:В], в котором объединены столбцы (вертикальная конкатенация);

  • B=cat(DIM.Al,A2,...) — объединяет множество входных массивов Al, A2,... вдоль размерности DIM.

Функции cat(DIM,C{:}) и cat(DIM.C.FIELD) обеспечивают соответственно конкатенацию (объединение) ячеек массива ячеек (см урок 15) или структур массива структур (см. урок 14), содержащих числовые матрицы, в единую матрицу.

Работа с размерностями Вычисление числа размерностей массива

Функция ndims(A) возвращает размерность массива А (если она больше или равна двум). Но если входной аргумент — массив Java или массив массивов Java, то независимо от размерности массива эта функция вернет 2.

Вычисление размера размерности массива

Для вычисления размера каждой размерности массива используется функция size:

  • М = size(A.DIM) возвращает размер размерности, указанной скаляром DIM, в виде вектора-строки размером 2. Для двумерного или одномерного массива А size(A.l) возвращает число рядов, a size (А, 2) - число столбцов;

[Ml, М2 ,МЗ,..., MN] = si ze(A) возвращает размер первых N размерностей массива А;

  • D = size (А), для mxn матрицы А возвращает двухэлементный вектор-строку, в котором первая составляющая — число строк т, а вторая составляющая — число столбцов n;

[m.n] = size(A) возвращает число рядов и столбцов в разных выходных параметрах (выходных аргументах в терминологии MATLAB)

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