What I needed to do was from a sequence of say, 0 to: 4, produce��#(0 0)#(1 1)#(2 2)#(3 3)#(4 4)#(1 0)#(2 1)#(3 2)#(4 3)#(0 4)#(2 0)#(3 1)#(4 2)#(0 3)#(1 4)#(3 0)#(4 1)#(0 2)#(1 3)#(2 4)#(4 0)#(0 1)#(1 2)#(2 3)#(3 4).��Basically, I wanted to generate all possible scores for a soccer match, hence the 1-1, 0-0, etc.����
>>>>> "Levente" == Levente Uzonyi <leves@elte.hu> writes:
Levente> I guess you are looking for this:
Levente> On Tue, 5 Jan 2010, John Toohey wrote:
>> But this doesn't get 1-1, 2-2 or 3-3. I had tried something like that use
>> #reverse on each combination, but #combinations does not generate
>> -duplicates- from the number sequences.
Levente> allPairsFromCollectionDo := [ :collection :block |
Levente> �� �� �� ��| o |
Levente> �� �� �� ��o := OrderedCollection newFrom: collection.
Levente> �� �� �� ��o size timesRepeat: [
Levente> �� �� �� �� �� �� �� ��o with: collection do: block.
Levente> �� �� �� �� �� �� �� ��o add: o removeFirst ] ].
Or more simply:
aCollection do: [:x | aCollection do: [:y | "use x and y"]].
Unless I'm misunderstanding the problem.
Which is neither combinations nor permutations, but so far is the only thing
that fits all the bizarre conditions.
--
Randal L. Schwartz - Stonehenge Consulting Services, Inc. - +1 503 777 0095
<merlyn@stonehenge.com> <URL:http://www.stonehenge.com/merlyn/>
Smalltalk/Perl/Unix consulting, Technical writing, Comedy, etc. etc.
See http://methodsandmessages.vox.com/ for Smalltalk and Seaside discussion
_______________________________________________
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project