Wow! That will take me some studying to understand, but that is exactly what I needed. Thanks so much!
Skip Skip Cave Cave Consulting LLC On Sat, Oct 31, 2020 at 1:33 AM ethiejiesa via Programming < [email protected]> wrote: > What about something like this? > > (|.~ ,.@i.@#)&.> n > ┌─────┬─────────┬───┬───────┐ > │1 2 3│4 5 6 7 8│8 6│3 5 7 9│ > │2 3 1│5 6 7 8 4│6 8│5 7 9 3│ > │3 1 2│6 7 8 4 5│ │7 9 3 5│ > │ │7 8 4 5 6│ │9 3 5 7│ > │ │8 4 5 6 7│ │ │ > └─────┴─────────┴───┴───────┘ > > Skip Cave <[email protected]> wrote: > > Is there a more concise way to express m rotations of each of a set of > > items? > > > > ]n=.1 2 3;4 5 6 7 8;8 6;3 5 7 9 > > > > ┌─────┬─────────┬───┬───────┐ > > > > │1 2 3│4 5 6 7 8│8 6│3 5 7 9│ > > > > └─────┴─────────┴───┴───────┘ > > > > m=. 0, 1, 2, 3, 4 NB. Number of rotations > > > > ea =. each > > > > > > n,.(1|.ea n),.(2|.ea n),.(3|.ea n),.(4|.ea n) > > > > ┌─────────┬─────────┬─────────┬─────────┬─────────┐ > > > > │1 2 3 │2 3 1 │3 1 2 │1 2 3 │2 3 1 │ > > > > ├─────────┼─────────┼─────────┼─────────┼─────────┤ > > > > │4 5 6 7 8│5 6 7 8 4│6 7 8 4 5│7 8 4 5 6│8 4 5 6 7│ > > > > ├─────────┼─────────┼─────────┼─────────┼─────────┤ > > > > │8 6 │6 8 │8 6 │6 8 │8 6 │ > > > > ├─────────┼─────────┼─────────┼─────────┼─────────┤ > > > > │3 5 7 9 │5 7 9 3 │7 9 3 5 │9 3 5 7 │3 5 7 9 │ > > > > └─────────┴─────────┴─────────┴─────────┴─────────┘ > > > > > > Or better yet with no duplicated rotations:: > > > > 2 7$~.,n,.(1|.ea n),.(2|.ea n),.(3|.ea n),.(4|.ea n) > > > > ┌─────────┬─────┬─────┬─────────┬─────────┬─────────┬─────────┐ > > > > │1 2 3 │2 3 1│3 1 2│4 5 6 7 8│5 6 7 8 4│6 7 8 4 5│7 8 4 5 6│ > > > > ├─────────┼─────┼─────┼─────────┼─────────┼─────────┼─────────┤ > > > > │8 4 5 6 7│8 6 │6 8 │3 5 7 9 │5 7 9 3 │7 9 3 5 │9 3 5 7 │ > > > > └─────────┴─────┴─────┴─────────┴─────────┴─────────┴─────────┘ > > > > Can this be done using iteration rather than explicitly listing each > > rotation? > > > > Skip Cave > > Cave Consulting LLC > > ---------------------------------------------------------------------- > > For information about J forums see http://www.jsoftware.com/forums.htm > > > ---------------------------------------------------------------------- > For information about J forums see http://www.jsoftware.com/forums.htm > ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
