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

if.

if. T do. B end.
if. T do. B else. B1 end.
if. T do. B elseif. T1 do. elseif. T2 do. B2 end.
Результат последнего предложения в блоке T проверяется на ненулевое значение своего первого атома, определяя — выполняется ли блок B после do. или остальная часть конструкции. Пустой результат блока T или отсутствие блока T означают "истину".

См. также конструкцию select. .
 

Например:
plus=: 4 : 0                  NB. Сложение для неотрицательных целых
 if. y do. >: x plus <: y else. x end.
)

   plus"0/~ i.5
0 1 2 3 4
1 2 3 4 5
2 3 4 5 6
3 4 5 6 7
4 5 6 7 8

sel=: 1 : 'x # ['

quicksort=: 3 : 0
 if. 1 >: #y do. y
 else. 
  (quicksort y <sel e),(y =sel e),quicksort y >sel e=.y{~?#y
 end.
)

   quicksort 15 2 9 10 4 0 13 13 18 7 
0 2 4 7 9 10 13 13 15 18

perm=: 3 : 0                  NB. Все перестановки i.y
 if. *y do. ,/ (0 ,. perm&.<: y) {"2 1 \:"1 =i.y else. i.1 0 end.
)

   perm 3
0 1 2
0 2 1
1 0 2
1 2 0
2 0 1
2 1 0

test=: 3 : 0
 if.     0<y do. 'positive'
 elseif. 0>y do. 'negative'
 elseif.     do. 'zero'
 end.
)

   test&.> 5 _2.71828 0
+--------+--------+----+
|positive|negative|zero|
+--------+--------+----+
    
   test&.> '' ; 0 1 _2 ; _3 9
+--------+----+--------+
|positive|zero|negative|
+--------+----+--------+


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