cartProd=: [:,@(],&.>"0 1~;@[)/a:,~] >@cartProd 1 2;3 4 5;0;8 9 1 3 0 8 1 3 0 9 1 4 0 8 1 4 0 9 1 5 0 8 1 5 0 9 2 3 0 8 2 3 0 9 2 4 0 8 2 4 0 9 2 5 0 8 2 5 0 9
=@@i June Kim schreef: > I recently sent the following email to Henry. I thought it would be > nice to know different ways of getting cartesian product(except the > built-in catalogue) that other people know. > > So, do you know of different ways of getting the cartesian product such as, > > cpd=:,"_1 _"_ _1 > cp=:[: > [: ([: ,/ cpd)&.>/ ,&.> > /:~ cp 1 2;3 4 5;0;8 9 > 1 3 0 8 > 1 3 0 9 > 1 4 0 8 > 1 4 0 9 > 1 5 0 8 > 1 5 0 9 > 2 3 0 8 > 2 3 0 9 > 2 4 0 8 > 2 4 0 9 > 2 5 0 8 > 2 5 0 9 > > > 2008/1/29, June Kim <[EMAIL PROTECTED]>: > >> Hello, >> >> on file:///C:/j601/system/extras/help/jforc/odds_and_ends.htm#_Toc141158196 >> >> There is a definition for cartesian product but I think there is a typo. >> >> <quote> >> The cartesian product can be written in J as ,"_1 " _1 (or, if the >> items have rank 0, by the table adverb ,"0/), as seen in this example >> where we box each result: >> >> 'io' <@,"_1 " _1 'nfd' >> </quote> >> >> I think it should've been instead: >> >> ,"_1 _"_ _1 NB. to be precise and revealing the intention, but... >> ,"_1 "_ _1 NB. this would work, too >> > > Actually, the latter works in the given example, but not in general cases. > > >> Thank you for your work. >> >> June Kim >> >> > ---------------------------------------------------------------------- > For information about J forums see http://www.jsoftware.com/forums.htm > > > ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
