Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
MATLAB.pdf
Скачиваний:
194
Добавлен:
27.03.2015
Размер:
1.06 Mб
Скачать

Индексирование (Subscripts)

Для краткого рассмотрения некоторых основных понятий, связанных с индексированием дву-мерных массивов (матриц), введем «волшебную» матрицу 4-го порядка:

F = magic(4)

F =

16

2

3

13

5

11

10

8

9

7

6

12

4

14

15

1

Элемент в i-ой строке и j-ом столбце матрицы F обозначается через F (i,j). Например, F (4,2) есть число в четвертой строке и втором столбце. Для нашего волшебного квадрата, F(4,2) есть 14. Таким образом, можно вычислить сумму элементов четвертого столбца матрицыF, напечатав

F (1,4) + F (2,4) + F (3,4) + F (4,4)

Это дает ответ

ans =

34

но, как мы увидим в дальнейшем, не является самым элегантным способом суммирования элементов одного столбца.

Имеется также возможность обращения к элементам матрицы при помощи одного индекса, F(k). Это обычный способ обращения к элементам векторов (строк или столбцов). Но в MATLAB-е такой способ индексирования можно применить и к двумерным(в общем случае

– многомерным) матрицам, так как система MATLAB хранит все многомерные массивы чисел в виде одного длинного вектора-столбца, сформированного из столбцов исходной матрицы. Так, для нашего волшебного квадрата, F (8) есть другой способ обращения к начени14 хранящемуся в F (4,2).

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

t = F (4,5)

Index exceeds matrix dimensions

(Индекс превышает размерность матрицы)

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

 

X = A;

 

X(4,5)

= 17

 

X =

 

 

 

 

16

3

2

13

0

5

0

11

8

0

9

6

7

12

0

4

15

14

1

17

27

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