что означает 1: в глаголе train (100 $ — {. 1:)»0

j

#j

Вопрос:

j-решение проблемы 100 дверей в коде rosetta ~:/ (100 $ - {. 1:)"0 >:i.100

>: i. 100 означает «составить список чисел от 1 до 100»

(100 $ - {. 1:)"0 >: i. 100 означает «составить список из 100 списков, где каждая позиция представляет целое число, и сделать каждую n-ю позицию 1»

~:/ (100 $ - {. 1:)"0 >: i. 100 означает «включить только те числа, в столбце которых есть единица только один раз», которые являются квадратами.

но глагол train (100 $ - {. 1:) меня озадачил… Что это 1: значит? Я нашел : глагол в nuvoc, но я не видел этого конкретного приложения там. Как сгруппированы глаголы?

Комментарии:

1. Кажется, (100 $ - {. 1:) это [монадическая вилка существительного] [ jsoftware.com/help/jforc/forks_hooks_and_compound_adv.htm ] , и это - {. 1: дает список чисел, которыми нужно заполнить 100 строк 100 $ плоскости.

2. Глагол 1: просто создает скалярное целое 1 число для любых и всех входных данных, монады или диады. Аналогично 2: производит a 2 , _7: производит a _7 ; это все глаголы, определенные в словаре как эффективно удобные функции. Их 19; от _9: 0: до 9: (т.Е. Все однозначные десятичные целые числа). Это не какая-то : функция, применяемая к литеральной числовой константе. Таким образом, fork $ {. 1: создает список n=. $y логических значений с одним начальным 1 (созданным 1: ) и n-1 конечным нулями в соответствии с определением {. .

3. @DanBron спасибо! если вы укажете это как ответ и ссылку на место в документах, где они объясняют это, я с радостью приму это 🙂

4. Спасибо! Я ценю это. К сожалению, я использую мобильное приложение, которое, к сожалению, больше не поддерживается. Так что у него есть некоторые ограничения. Например, я больше не могу вставлять ссылки. А редактирование ответов — это ЛАВАШ. Но не стесняйтесь публиковать это самостоятельно. Вам даже не нужно доверять мне. Просто зайдите в Jsoftware, найдите NuVoc и выполните поиск 0: . Вы найдете ссылку. В качестве альтернативы, подождите немного, и опытные и щедрые другие участники сообщества J обязательно опубликуют официальные и полезные ответы.

5. О! Я солгал. $ {. 1: По какой-то причине я был сосредоточен на: фактический поезд есть 100 $ - {. 1: ; концепция по-прежнему остается той же, что и сейчас, вместо n=. $y этого n=.-y , таким образом, 1 созданный глаголом 1: является завершающим , а не ведущим , а затем 100 $ .. гарантирует, что длина результирующего массива равна ровно 100, усекая или повторяя элементы (циклически) по мере необходимостидостигните этой конкретной длины. Извините за середину.