Re: Loop problem

*To*: mathgroup at smc.vnet.net*Subject*: [mg123073] Re: Loop problem*From*: Bob Hanlon <hanlonr357 at gmail.com>*Date*: Tue, 22 Nov 2011 05:37:01 -0500 (EST)*Delivered-to*: l-mathgroup@mail-archive0.wolfram.com*References*: <201111210927.EAA14761@smc.vnet.net>

For i!=j!=k!=l, I assume that you mean that there must be four distinct elements and that for this and the other cases that you must mean 0 <= i,j,k,l <= 3 Select[Tuples[Range[0, 3], 4], Length[Union[#]] == 4 &] {{0, 1, 2, 3}, {0, 1, 3, 2}, {0, 2, 1, 3}, {0, 2, 3, 1}, {0, 3, 1, 2}, {0, 3, 2, 1}, {1, 0, 2, 3}, {1, 0, 3, 2}, {1, 2, 0, 3}, {1, 2, 3, 0}, {1, 3, 0, 2}, {1, 3, 2, 0}, {2, 0, 1, 3}, {2, 0, 3, 1}, {2, 1, 0, 3}, {2, 1, 3, 0}, {2, 3, 0, 1}, {2, 3, 1, 0}, {3, 0, 1, 2}, {3, 0, 2, 1}, {3, 1, 0, 2}, {3, 1, 2, 0}, {3, 2, 0, 1}, {3, 2, 1, 0}} For i!=j=k!=l, I assume that you want three distinct elements with positions 2 and 3 equal Select[Tuples[Range[0, 3], 4], #[[2]] == #[[3]] && Length[Union[#]] == 3 &] {{0, 1, 1, 2}, {0, 1, 1, 3}, {0, 2, 2, 1}, {0, 2, 2, 3}, {0, 3, 3, 1}, {0, 3, 3, 2}, {1, 0, 0, 2}, {1, 0, 0, 3}, {1, 2, 2, 0}, {1, 2, 2, 3}, {1, 3, 3, 0}, {1, 3, 3, 2}, {2, 0, 0, 1}, {2, 0, 0, 3}, {2, 1, 1, 0}, {2, 1, 1, 3}, {2, 3, 3, 0}, {2, 3, 3, 1}, {3, 0, 0, 1}, {3, 0, 0, 2}, {3, 1, 1, 0}, {3, 1, 1, 2}, {3, 2, 2, 0}, {3, 2, 2, 1}} For i!=j!=k=l, I assume that you want three distinct elements with positions 3 and 4 equal Select[Tuples[Range[0, 3], 4], #[[3]] == #[[4]] && Length[Union[#]] == 3 &] {{0, 1, 2, 2}, {0, 1, 3, 3}, {0, 2, 1, 1}, {0, 2, 3, 3}, {0, 3, 1, 1}, {0, 3, 2, 2}, {1, 0, 2, 2}, {1, 0, 3, 3}, {1, 2, 0, 0}, {1, 2, 3, 3}, {1, 3, 0, 0}, {1, 3, 2, 2}, {2, 0, 1, 1}, {2, 0, 3, 3}, {2, 1, 0, 0}, {2, 1, 3, 3}, {2, 3, 0, 0}, {2, 3, 1, 1}, {3, 0, 1, 1}, {3, 0, 2, 2}, {3, 1, 0, 0}, {3, 1, 2, 2}, {3, 2, 0, 0}, {3, 2, 1, 1}} For i!=k!=j=l , I assume that you want three distinct elements with positions 2 and 4 equal Select[Tuples[Range[0, 3], 4], #[[2]] == #[[4]] && Length[Union[#]] == 3 &] {{0, 1, 2, 1}, {0, 1, 3, 1}, {0, 2, 1, 2}, {0, 2, 3, 2}, {0, 3, 1, 3}, {0, 3, 2, 3}, {1, 0, 2, 0}, {1, 0, 3, 0}, {1, 2, 0, 2}, {1, 2, 3, 2}, {1, 3, 0, 3}, {1, 3, 2, 3}, {2, 0, 1, 0}, {2, 0, 3, 0}, {2, 1, 0, 1}, {2, 1, 3, 1}, {2, 3, 0, 3}, {2, 3, 1, 3}, {3, 0, 1, 0}, {3, 0, 2, 0}, {3, 1, 0, 1}, {3, 1, 2, 1}, {3, 2, 0, 2}, {3, 2, 1, 2}} Bob Hanlon On Mon, Nov 21, 2011 at 4:27 AM, P Shar <puya.sharif at live.com> wrote: > Hey guys, i need a loop (that does the following) and can't figure out what to do.. > > I need a set of lists {i,j,k,l} i=E2=89 j=E2=89 k=E2=89 l, i=E2=89 j=k=E2=89 l, i=E2=89 j=E2=89 k=l, i=E2=89 k=E2=89 j=l where 0 < i,j,k,l < 3. > > So basically all the cases where the first condition holds and all the cases there the second holds etc.. > > Easiest would be to get the output as a matrix with the {i,j,k,l}'s as rows. > > Any ideas (or at least where to start)? > > Cheers >

**References**:**Loop problem***From:*P Shar <puya.sharif@live.com>