Wyobraź sobie, że generujesz liczby Fibonacciego za pomocą oczywistego, brutalnego algorytmu. Jeśli wiem liczbę Fibonaccis Chcę, aby wygenerować z góry, mogę zrobić coś takiego za pomocą spójnika zasilania ^:
:Czy istnieje idiom J do dodawania do listy, dopóki nie zostanie spełniony określony warunek?
(, [: +/ _2&{.)^:20 i.2
Jak mogę zamiast zatrzymać kiedy Fibonaccis osiągnąć pewną granicę, powiedzieć 1e6
? (Wiem, jak to zrobić w funkcji używającej while.
, ale to nie jest zabawne.)
Chcę podkreślić, że jest to ogólne pytanie o J, a nie konkretne pytanie dotyczące Fibonacciego. Nie rozpraszaj się numerami Fibonacciego. Głównym pytaniem jest, jak zachować dołączanie do listy, dopóki nie zostanie spełniony jakiś warunek.
Byłem świadomy, jak używać potęgi koniunkcji z czasownikiem i "_", ale pomysł połączenia ich razem nie przyszedł mi do głowy. –