JetStre4m
Lieutenant
- Registriert
- Nov. 2007
- Beiträge
- 578
Hallo, ich programmiere in C++ und habe folgendes Problem:
Ich habe vier int-Arrays. Die ersten drei haben zehn int-Werte. Ich will die Zahlen später nach dem Schema Array1_1[1]+Array1_2[1] benutzen. Die kombination der beiden Zahlen darf sich nicht wiederholen, wenn also Array1_1[1]=10 und Array1_2[1]=15 ist, darf zwar Array2_1[1]=10 aber dann nicht Array2_2[1]=15 sein. Array1_1, Array1_2 und Array2_1 haben schon die ihre Werte. um dann Array 2_2 noch zu befüllen habe ich folgendes verfasst:
Das funktioniert aber nicht, die Kombinationen wiederholen sich trotzdem. findet einer das Problem, bzw. eine Bessere Lösung?
mfg,
tXX
Ich habe vier int-Arrays. Die ersten drei haben zehn int-Werte. Ich will die Zahlen später nach dem Schema Array1_1[1]+Array1_2[1] benutzen. Die kombination der beiden Zahlen darf sich nicht wiederholen, wenn also Array1_1[1]=10 und Array1_2[1]=15 ist, darf zwar Array2_1[1]=10 aber dann nicht Array2_2[1]=15 sein. Array1_1, Array1_2 und Array2_1 haben schon die ihre Werte. um dann Array 2_2 noch zu befüllen habe ich folgendes verfasst:
Code:
for(int i=0; i<=9; i++){
next:
Array2_2[i]=rand()% 16 +0; //einen Zufallswert zuordnen//
for(int j=0; j<=9; j++){
if(Array1_2[j]==Array2_2[i]){ //Wenn kombination v. Array1 und 2 gleich dann
if(Array1_1[j]==Array2_1[i]) goto next; //prüfen ob auch Array 3 u. 4 gleich sind
}
if(j==i) j++;
if(j>i) break;
if(Array2_2[j]==Array2_2[i]){ //überprüfen ob zwei eigene Kombinationen gleich sind
if(Array2_1[j]==Array2_1[i]){
goto next;
}
}
}
}
mfg,
tXX