Ich habe ein Shuffling-Programm erstellt, das ein 5X5-Array und einen Vektor verwendet. Der Vektor sollte die Werte 1 bis einschließlich 25 speichern und das Array sollte nur 0 für jedes Element haben. Sobald die Funktion shuffle() übergeben wurde, sollte sie die Werte 1 bis 25 des Vektors im Array zufällig positionieren.Shuffling-Funktion funktioniert nicht richtig
void Match::shuffle() {
std::vector<int> vec(25);
int randNum = rand() % (vec.size());
for (int i = 1; i < 26; i ++) {
vec.push_back(i);
}
for (int i = 0; i < 5; i++) {
for (int j = 0; j < 5; j++) {
backArr[i][j] = vec.at(randNum);
vec.erase(vec.begin() + randNum);
randNum = rand()%vec.size();
}
}
}
Es ist schwierig, Lösungen anzubieten, wenn die Problemstellung einfach lautet: "Es funktioniert nicht". Bitte [bearbeiten] Sie Ihre Frage, um eine ausführlichere Beschreibung dessen zu geben, was Sie erwartet haben und wie sich das von den tatsächlichen Ergebnissen unterscheidet. Sehen Sie [fragen] nach Hinweisen auf, was eine gute Erklärung macht. –
[MCVE] wird benötigt. –
http://stackoverflow.com/questions/6127503/shuffle-array-in-c. Das könnte helfen –