Работа с элементами матрицы
Scilab предлагает несколько способов доступа к элементам матрицы А:
- для того, чтобы оперировать целой матрицей, используется её имя A:
- для поэлементных манипуляций применяется запись A(I,j):
- для доступа к группе элементов, индексы которых лежат в некотором диапазоне, служит оператор " :".
Оператор ":" будет рассмотрен в следующем разделе.
Для операций с матрицами используются имена содержащей эти матрицы переменных. Все элементарные алгебраические операции применимы к матрицам одинакового размера, как это показано ниже на примере вычисления суммы матриц:
-->А = ones(2, 3)
А =
1. 1. 1.
1. 1. 1.
-->В = 2 * ones(2, 3)
В =
2. 2. 2.
2. 2. 2.
-->А + В
ans =
3. 3. 3.
3 .3. 3.
Получить доступ к отдельному элементу матрицы можно с помощью записи А (i,j), при условии что i и j представляют собой допустимые значения индексов. По умолчанию в Scilab первый элемент имеет индекс 1, в отличие от многих языков программирования (в частности С), где индекс элементов массива начинается с 0. Допустим, к примеру, что А представляет собой матрицу nr х nc, где nr есть число строк, a. nc - число столбцов. Запись A(i,j) имеет смысл только при 1 < i < nr и 1 < j < nc. Если значение хотя бы одного из двух индексов не является допустимым, выдается сообщение об ошибке:
-->А = ones(2, 3)
А =
1. 1. 1.
1. 1. 1.
-->А(1, 1)
ans =
1.
-->А(12, 1)
!-- error 21 Invalid index . -->А(0, 1)
!-- error 21 Invalid index.
Прямой доступ к элементам матрицы с использованием синтаксиса А (i,j) следует использовать только в том случае, если отсутствует соответствующая высокоуровневая функция Scilab. В большинстве же случае такая функция может быть найдена. Scilab предлагает широкий набор простых и эффективных команд, основанных на возможностях векторизации. Одна из таких возможностей заключена в использовании оператора " :", который оказывается чрезвычайно полезным во многих практических ситуациях.