diff --git a/doble.exe b/doble.exe index 0c6e1e4..21285b7 100644 Binary files a/doble.exe and b/doble.exe differ diff --git a/highscores.txt b/highscores.txt index db80136..b1e74d7 100644 --- a/highscores.txt +++ b/highscores.txt @@ -2,4 +2,5 @@ player_name;6979 player_name;4982 player1;3999 player_name;3992 +player_name;3989 player_name;2996 diff --git a/numbers.c b/numbers.c index 9760271..9ee9d5c 100644 --- a/numbers.c +++ b/numbers.c @@ -46,12 +46,12 @@ unsigned int *createNumbers(unsigned int len) } } } - // numbers[rand()% (len+1)] = rand()% ((2* len) + 1); - size_t dupIndex = rand() % len; // Index, der dupliziert wird - size_t targetIndex = rand() % len; // Ziel-Index, wo das Duplikat hin soll + //duplizierte Zahl hinzufügen + unsigned int dupIndex = rand() % len; + unsigned int targetIndex = rand() % len; if (dupIndex != targetIndex) { - numbers[targetIndex] = numbers[dupIndex]; // echtes Duplikat + numbers[targetIndex] = numbers[dupIndex]; } return numbers; free(numbers); @@ -79,12 +79,13 @@ unsigned int *createNumbers(unsigned int len) free(numbers); return NULL; } - + // fügt zufällige Zahlen in das Array ein TreeNode *root = NULL; for (size_t i = 0; i < len; i++) { unsigned int isDup = 0; numbers[i] = (rand() % (2 * len)) + 1; + //prüft, ob die Zahl schon vorhanden ist root = addToTree(root, &numbers, sizeof(numbers), compare, &isDup); if (isDup != 1) { @@ -92,12 +93,12 @@ unsigned int *createNumbers(unsigned int len) } } - // numbers[rand()% len] = (rand()% (2* len) + 1); - size_t dupIndex = rand() % len; // Index, der dupliziert wird - size_t targetIndex = rand() % len; // Ziel-Index, wo das Duplikat hin soll + //duplizierte Zahl hinzufügen + unsigned int dupIndex = rand() % len; + unsigned int targetIndex = rand() % len; if (dupIndex != targetIndex) { - numbers[targetIndex] = numbers[dupIndex]; // echtes Duplikat + numbers[targetIndex] = numbers[dupIndex]; } return numbers; clearTree(root); diff --git a/stack.c b/stack.c index ea5d804..de37506 100644 --- a/stack.c +++ b/stack.c @@ -32,8 +32,7 @@ StackNode *pop(StackNode *stack) StackNode *newTop = stack->next; - // Daten gehen verloren! - // Caller KANN sie nicht freigeben. + free(stack); return newTop;