Моделирование в системе MATLAB. Часть 1. Основы работы в MATLAB. Терёхин В.В. - 207 стр.

UptoLike

Составители: 

205
Функция [Y1, Y2, Y3,...] = deal(X1, X2, X3,...) устанавливает
следующее соответствие между входами и выходами Y1 = X1, Y2 =
X2, Y3 = X3, … .
Замечание. Функция deal исключительно полезна при приме-
нении в следующих конструкциях при работе с массивами ячеек и
массивами записей:
оператор [S.field] = deal(X) присваивает всем полям структу-
ры S с именем field значение X. Если S не существует, надо ис-
пользовать оператор
[S(1:m).field] = deal(X);
оператор [X{ : }] = deal(A.field) копирует поля структуры A с
именем field в массив ячеек X. Если X не существует, надо ис-
пользовать оператор [X{1:m}] = deal(A.field);
оператор [Y1, Y2, Y3, ...] = deal(X{ : }) копирует содержимое
массива ячеек X в отдельные переменные Y1, Y2, Y3, ... ;
оператор [Y1,Y2,Y3,...] = deal(S.field) копирует поля структу-
ры S с именем field в отдельные переменные Y1, Y2, Y3, ... .
Пример. Скопировать содержимое массива ячеек C размера
1х4 в 4 выходные переменные:
C = {rand(3) ones(3, 1) eye(3) zeros(3, 1)};
[a, b, c, d] = deal(C{ : })
a =
0.9501 0.4860 0.4565
0.2311 0.8913 0.0185
0.6068 0.7621 0.8214
b =
1
1
1
c =
1 0 0
0 1 0
0 0 1
d =
0
0
0
         Функция [Y1, Y2, Y3,...] = deal(X1, X2, X3,...) устанавливает
следующее соответствие между входами и выходами Y1 = X1, Y2 =
X2, Y3 = X3, … .
         Замечание. Функция deal исключительно полезна при приме-
нении в следующих конструкциях при работе с массивами ячеек и
массивами записей:
    • оператор [S.field] = deal(X) присваивает всем полям структу-
    ры S с именем field значение X. Если S не существует, надо ис-
    пользовать оператор [S(1:m).field] = deal(X);
    • оператор [X{ : }] = deal(A.field) копирует поля структуры A с
    именем field в массив ячеек X. Если X не существует, надо ис-
    пользовать оператор [X{1:m}] = deal(A.field);
    • оператор [Y1, Y2, Y3, ...] = deal(X{ : }) копирует содержимое
    массива ячеек X в отдельные переменные Y1, Y2, Y3, ... ;
    • оператор [Y1,Y2,Y3,...] = deal(S.field) копирует поля структу-
    ры S с именем field в отдельные переменные Y1, Y2, Y3, ... .
         Пример. Скопировать содержимое массива ячеек C размера
1х4 в 4 выходные переменные:
          C = {rand(3) ones(3, 1) eye(3) zeros(3, 1)};
         [a, b, c, d] = deal(C{ : })
          a=
              0.9501 0.4860 0.4565
            0.2311       0.8913 0.0185
            0.6068       0.7621 0.8214

          b=
          1
          1
          1
        c=

               1     0    0
               0     1    0
               0     0    1

        d=
          0
          0
          0

                                                                  205