Problema Array

martedì 06 novembre 2007 - 14.53

almax Profilo | Junior Member

Ciao mi serviva un aiutino...
Ho un array di elementi (numeri)

devo fare in modo che questi numeri vengano sommati in tutte le combinazioni possibili per esempio di 4 elementi ...
Ho questo array(1)(2)(3)(4)(5)(6) vorrei questo

1+2+3+4=10
1+2+3+5=11
1+2+3+6=12
2+3+4+5=14
2+3+5+6=16
...............
credo che le combinazioni siano 15

una cosa di questo genere, come si puo' fare ?

StefanoLep Profilo | Senior Member

La risposta la trovi in qualche libro di statistica (che ora non trovo sotto mano) la tua in particolare è una combinazione di 6 elementi in 4 posti. Non ricordo la formula precisa, chiedi aiuto a san Google "combinazione elementi posti". Io mi sono incuriosito è ho trovato questo link: http://cdm.unimo.it/home/matematica/zanelli.vanna/appunti-%20capitolo1.pdf.

da cui viene fuori la formula (6*5*4*3*2*1) / (4*3*2*1) = 30 quindi hai 30 combinazioni possibili. Il link che ho trovato mi sembra utile e molto chiaro (bastano le prime 3 pagine per risolvere il tuo problema). Spero di averti aiutato :-)


Solo chi fa sbaglia :-)

almax Profilo | Junior Member

Ti ringrazio per la risposta, pero' avrei bisogno non del numero di combinazione ma delle some delle combinazioni,
Ti spiego ho un totale e 100 elementi devo trovare il totale sommando di volta in volta in combinazione ... tipo ho 10 poi 1, 2, 4, 7, 9,
il sistema mi deve trovare
7+2+1=10
9+1=10

magari anche limitando somme da 4 elementi ....
Grazie

StefanoLep Profilo | Senior Member

Ciao, non so se riesco ad aiutarti ma potresti provare a farmi un esempio un pò più chiaro perchè non ho capito bene. Hai un array con 100 numeri e prendendone 4 alla volta vuoi sapere la somma per tutte le combinazioni possibili?

Solo chi fa sbaglia :-)

almax Profilo | Junior Member

Allora ti faccio un esempio reale ...
Io ho un file con n righe (variabile, possono essere 100, 20, 30, numeri)

Ho un totale, cioè un numero ... Devo trovare le possibili somme tra gli n numeri che mi danno come risultato il totale ... Io avevo pensato ad un array

1
2
3
4
5
6

totale 10

6+4=10
6+3+1=10
5+4+1=10
5+2+3=10

Una cosetta così, poi li posso combinare a 3 a 4 a 5 ...
Grazie
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5