>>  <<  Ркв  Ввд  JfC  LJ  Фрз  Слв  Изм  Рзг  !:  Помощь  Словарь

26. Обращение и Преобразования

Результат f^:_1 называется обращением функции f ; если f=: g :. h, то ее обращением является h, иначе обращение — глагол, обратный к f. Обратные глаголы определены для более чем 25 примитивов (включая квадратный корень, как показано в Разделе 11). Обращение выполняется автоматически и для многих диад с прицепом, таких как -&3 , 10&^. и 2&o. . Более того, u@v^:_1 есть (v^:_1)@(u^:_1) . Например:
   fFc=: (32&+)@(*&1.8)
   ]b=:fFc _40 0 100
_40 32 212

   cFf=: fFc^:_1
   cFf b
_40 0 100
Результатом фразы f &. g является глагол (g^:_1)@(f & g) . Он может быть рассмотрен как применение “основной” функции под преобразованием (выполняемым глаголом g до операции, с восстановлением, путем обратного преобразования, после нее). Например:
   b=: 0 0 1 0 1 0 1 1 0 0 0
   sup=: </\                   Подавить единицы после первой
   sup b
0 0 1 0 0 0 0 0 0 0 0

   |. sup |. b                 Подавить единицы перед последней
0 0 0 0 0 0 0 1 0 0 0

   sup&.|. b
0 0 0 0 0 0 0 1 0 0 0

   3 +&.^. 4                   Умножить, путем взятия экспоненты
12                             от суммы логарифмов

   (^.3)+(^.4)
2.48491

   ^ (^.3)+(^.4)
12

   ]c=: 1 2 3;4 5;6 7 8
+-----+---+-----+
|1 2 3|4 5|6 7 8|
+-----+---+-----+
          
   |.&.> c                     Распаковать, перевернуть, и упаковать
+-----+---+-----+
|3 2 1|5 4|8 7 6|
+-----+---+-----+

Упражнения

26.1   Используйте следующее для упражнений по чтению и письму. Попробуйте с аргументами a=: 2 3 5 7 , b=: 1 2 3 4 и c=: <@i."0 i. 3 4 :
f=: +&.^.                      Умножение сложением нат. логарифмов
g=: +&.(10&^.)                 Умножение сложением логарифмов по осн. 10
h=: *&.^                       Сложение путем умножения
i=: |.&.>                      Реверс внутри каждой упаковки
j=: +/&.>                      Суммировать внутри каждой упаковки
k=: +/&>                       то-же, но оставив в распакованном виде



>>  <<  Ркв  Ввд  JfC  LJ  Фрз  Слв  Изм  Рзг  !:  Помощь  Словарь