Hangt er vanaf wat je met die getallen wilt doen. Stel dat je 20 integers in een array hebt zitten, dan heb je 380 combinaties. (x.(x-1) als ik me niet vergis). Als je al die combinaties (= de resultaten van die bewerking) gewoon wil opslaan in een nieuwe array kan je dat simpelweg doen met een for-loop of een while-loop.
Code:
int i = 0;
int j = 0;
int[] array = new int[20];
int[] oplossingen = new int[array.Count()*(array.Count()-1)];
while(i < array.Count()) {
//We combineren het element met alle elementen die in de array voor het element komen
for(int k = i-1;k >= 0;k--) {
oplossingen[j] = array[i] - array[k];
j++;
}
//Combineren met alle elementen die achter het element in de array komen
for(int k = i+1;k < array.Count();k++) {
oplossingen[j] = array[i] - array[k];
j++;
}
i++;
}
Ofzoiets, heb het niet nagekeken of deze code werkt.
Favorieten/bladwijzers