]]> ]]>

Факториал в APL

Пример для версий Dyalog APL 13.1

В этом примере факториал числа N вычисляется как свертка списка чисел от 1 до N, включительно, при помощи выражения ×/1+⍳. Анонимная D-функция применяет это выражение к своему правому аргументу и конкатенирует его с самим аргументом и строкой-разделителем. Функция, в свою очередь, применяется к списку чисел от 0 до 16, записанному в столбик (т.е. как двухмерный массив 17x1). Вывод программы выглядит следующим образом:

 ┌→───────────────────┐      
 ↓0 != 1              │      
 ├+──────────────────→┤      
 │1 != 1              │      
 ├+──────────────────→┤      
 │2 != 2              │      
 ├+──────────────────→┤      
 [...25 lines of output ...]  
 ├+──────────────────→┤      
 │16 != 20922789888000│      
 └+──────────────────→┘
IO←0
⎕PP←18
{, '!=', ×/1+⍳⍵}¨17 1⍴⍳17

Комментарии

]]>

blog comments powered by Disqus

]]>

Работа программистам