Оператор "$"

Обычно при обращении к элементам матрицы, отсчет индексов ведется от пер­вой строки и первого столбца. Оператор "$" позволяет адресовать элементы матрицы, отсчитывая индексы от последней строки или столбца в зависимости от контекста.

Различные варианты использования оператора "$" приведены в табл. 12. Следующий фрагмент демонстрирует использование оператора " $" для до­ступа к элементу

А(2,1) = A(nr-l,nc-2) = А($-1,$-2) матрицы 3 х 3:

-->A=testmatrix("hilb", 3)

А =

9.       -36.       30.

                -36.       192.    -180.
                 30.      -180.     180.

-->А($  -  1,   $  - 2)

ans =

   -36.

Оператор "$" позволяет динамически добавлять элементы в последнюю стро­ку или столбец матрицы. В следующем примере в Гильбертову матрицу добав­ляется новая строка:

 

>А($ +              1,   :) =  [1 2 3]

              A=

9.     -36.       30.

                   -36.               192.            -180

30.        -180.          180

1.       2.         3.

Чаще всего оператор "$" используется в составе выражения $+1, которое позволяет добавлять в матрицу строки или столбцы. Такой способ оказывает­ся удобным, поскольку избавляет от необходимости постоянно корректировать число строк и столбцов. Однако пользоваться им необходимо аккуратно, лишь в тех случаях, когда размер матрицы не известен заранее. Поскольку при каж­дом добавлении строки или столбца требуется выделение памяти под матрицу большего размера и копирование всех элементов из исходной матрицы, зло­употребление этой возможностью может привести к существенному снижению производительности программы.

© vse-o-scilab

Сделать бесплатный сайт с uCoz