piccolo esercizietto giusto per reinaugurare la sezione...(daltronde dopo l'alfabeto farfallino...)
L'esercizio consiste nello stampare tutte le combinazioni dei numeri o valori passati presi a gruppi di N valori per volta
cioè nel prendere in input o un array o un range di numeri (ma deve supportare entrambe le opzioni!) e il numero N di elementi per combinazione e restituire tutte le possibili combinazioni SINGOLE di N valori. (singole nel senso che se c'è gia la coppia 1,2 la combinazione 2,1 è doppia e va scartata)
ad esempio io passo 5 come range e 2 come N (numero di elementi per combinazione) e il programma restituisce tutte le possibili combinazioni dei 5 numeri presi 2 a 2, cioè [1,2], [1,3], [1,4] ... [3,5] ecc (e non [2,1] dato che gia c'è [1,2])
... il numero di combinazioni possibili in M valori presi N a N sarà il coifficente binomiale di M e N ( cioè M!/(N!(M-N)!) )
quindi nell'esempio precedente, il numero di combinzioni di 5 elementi presi a due a due è (5 2) = 10
il mio in ruby:
http://www.cyberfox.netsons.org/s/comb.html
L'esercizio consiste nello stampare tutte le combinazioni dei numeri o valori passati presi a gruppi di N valori per volta
cioè nel prendere in input o un array o un range di numeri (ma deve supportare entrambe le opzioni!) e il numero N di elementi per combinazione e restituire tutte le possibili combinazioni SINGOLE di N valori. (singole nel senso che se c'è gia la coppia 1,2 la combinazione 2,1 è doppia e va scartata)
ad esempio io passo 5 come range e 2 come N (numero di elementi per combinazione) e il programma restituisce tutte le possibili combinazioni dei 5 numeri presi 2 a 2, cioè [1,2], [1,3], [1,4] ... [3,5] ecc (e non [2,1] dato che gia c'è [1,2])
... il numero di combinazioni possibili in M valori presi N a N sarà il coifficente binomiale di M e N ( cioè M!/(N!(M-N)!) )
quindi nell'esempio precedente, il numero di combinzioni di 5 elementi presi a due a due è (5 2) = 10
il mio in ruby:
http://www.cyberfox.netsons.org/s/comb.html