From ec60cd99946ddffbceefb434b6ed5c70c4e51767 Mon Sep 17 00:00:00 2001 From: silvana884 Date: Wed, 5 Nov 2025 11:12:54 +0100 Subject: [PATCH] Angefagen, zu verschoenern --- Start_Windows/game.c | 44 ++++++++++++++++++++++---------------------- Start_Windows/game.h | 10 +++++----- 2 files changed, 27 insertions(+), 27 deletions(-) diff --git a/Start_Windows/game.c b/Start_Windows/game.c index 42441eb..4bfc715 100644 --- a/Start_Windows/game.c +++ b/Start_Windows/game.c @@ -26,14 +26,14 @@ int createWordSalad(char salad[MAX_SEARCH_FIELD_LEN][MAX_SEARCH_FIELD_LEN], unsi } placedWords = fillSalad(salad, searchFieldLen, words, wordCount, usedWords); - showWordSalad(salad, searchFieldLen); + showWordSalad(salad); printf("\nPlacedWords: %d\n", placedWords); return placedWords; } // Prints the word salad to console -void showWordSalad(const char salad[MAX_SEARCH_FIELD_LEN][MAX_SEARCH_FIELD_LEN], unsigned int searchFieldLen) +void showWordSalad(const char salad[MAX_SEARCH_FIELD_LEN][MAX_SEARCH_FIELD_LEN]) { printf("\nWordSalad:\n"); for(int i=0; i < MAX_SEARCH_FIELD_LEN; i++) @@ -48,7 +48,7 @@ void showWordSalad(const char salad[MAX_SEARCH_FIELD_LEN][MAX_SEARCH_FIELD_LEN], // Decides wether to print horizontally or vertically // returns 1, when horizontal -int printHorizontal(unsigned int wordCount) +int printHorizontal() { return rand() % 2; } @@ -70,41 +70,41 @@ int fillSalad(char salad[MAX_SEARCH_FIELD_LEN][MAX_SEARCH_FIELD_LEN], unsigned i { int addedWords = 0; // empties salad - for(int i = 0; i < searchFieldLen; i++) { - for(int j = 0; j < searchFieldLen; j++) { + for(unsigned int i = 0; i < searchFieldLen; i++) { + for(unsigned int j = 0; j < searchFieldLen; j++) { salad[i][j] = '\0'; } } // inserts words - for(int w = 0; w < wordCount; w++) { + for(unsigned int w = 0; w < wordCount; w++) { int tries = 0; int placed = 0; while(tries < MAX_RAND_TRIES_PER_WORD && !placed) { - int numWord = whichWord(words, wordCount, usedWords); + int numWord = whichWord(wordCount, usedWords); if(numWord == -5) { // found no unused word break; } - int horizontal = printHorizontal(wordCount); + int horizontal = printHorizontal(); if(horizontal) { int row = rand() % searchFieldLen; // checks if words fits - int wordLen = strlen(words[numWord]); + unsigned int wordLen = strlen(words[numWord]); if(wordLen <= searchFieldLen) { int startCol = rand() % (searchFieldLen - wordLen + 1); int canPlace = 1; - for(int i = 0; i < wordLen; i++) { //checks if word fits + for(unsigned int i = 0; i < wordLen; i++) { //checks if word fits if(salad[row][startCol + i] != '\0') { canPlace = 0; break; } } if(canPlace) { //word fits and is inserted - for(int i = 0; i < wordLen; i++) { + for(unsigned int i = 0; i < wordLen; i++) { salad[row][startCol + i] = words[numWord][i]; } placed = 1; @@ -118,14 +118,14 @@ int fillSalad(char salad[MAX_SEARCH_FIELD_LEN][MAX_SEARCH_FIELD_LEN], unsigned i if(wordLen <= searchFieldLen) { int startRow = rand() % (searchFieldLen - wordLen + 1); int canPlace = 1; - for(int i = 0; i < wordLen; i++) { + for(unsigned int i = 0; i < wordLen; i++) { if(salad[startRow + i][col] != '\0') { canPlace = 0; break; } } if(canPlace) { - for(int i = 0; i < wordLen; i++) { + for(unsigned int i = 0; i < wordLen; i++) { salad[startRow + i][col] = words[numWord][i]; } placed = 1; @@ -142,7 +142,7 @@ int fillSalad(char salad[MAX_SEARCH_FIELD_LEN][MAX_SEARCH_FIELD_LEN], unsigned i } -int whichWord(const char words[][MAX_WORD_LEN], unsigned int wordCount, int usedWords[MAX_NUMBER_OF_WORDS]) +int whichWord(unsigned int wordCount, int usedWords[MAX_NUMBER_OF_WORDS]) { int tries = 0; @@ -178,9 +178,9 @@ int whichWord(const char words[][MAX_WORD_LEN], unsigned int wordCount, int used //Fills word in salad and deletes row of words of the used word -void fillWordinRow(char salad[MAX_SEARCH_FIELD_LEN][MAX_SEARCH_FIELD_LEN],unsigned int searchFieldLen,const char words[][MAX_WORD_LEN],unsigned int wordCount,int numWord,int row) +void fillWordinRow(char salad[MAX_SEARCH_FIELD_LEN][MAX_SEARCH_FIELD_LEN],unsigned int searchFieldLen,const char words[][MAX_WORD_LEN], int numWord,int row) { - int wordLen = strlen(words[numWord]); + unsigned int wordLen = strlen(words[numWord]); // Returns if word longer than game field if (wordLen > searchFieldLen || wordLen == 0) @@ -190,14 +190,14 @@ void fillWordinRow(char salad[MAX_SEARCH_FIELD_LEN][MAX_SEARCH_FIELD_LEN],unsign int startCol = rand() % (searchFieldLen - wordLen + 1); // Determines wether word fits - for (int i = 0; i < wordLen; i++) + for (unsigned int i = 0; i < wordLen; i++) { if (salad[row][startCol + i] != '\0') { return; } } - for (int i = 0; i < wordLen; i++) + for (unsigned int i = 0; i < wordLen; i++) { salad[row][startCol + i] = words[numWord][i]; } @@ -205,16 +205,16 @@ void fillWordinRow(char salad[MAX_SEARCH_FIELD_LEN][MAX_SEARCH_FIELD_LEN],unsign //Fills word in salad and deletes row of words of the used word, vertical from top to bottom -void fillWordinColumn(char salad[MAX_SEARCH_FIELD_LEN][MAX_SEARCH_FIELD_LEN], unsigned int searchFieldLen, const char words[][MAX_WORD_LEN], unsigned int wordCount, int numWord, int column) +void fillWordinColumn(char salad[MAX_SEARCH_FIELD_LEN][MAX_SEARCH_FIELD_LEN], unsigned int searchFieldLen, const char words[][MAX_WORD_LEN], int numWord, int column) { - int wordLen = strlen(words[numWord]); + unsigned int wordLen = strlen(words[numWord]); if (wordLen > searchFieldLen || wordLen == 0) return; int startRow = rand() % (searchFieldLen - wordLen + 1); - for (int i = 0; i < wordLen; i++) + for (unsigned int i = 0; i < wordLen; i++) { if (salad[startRow + i][column] != '\0') { @@ -222,7 +222,7 @@ void fillWordinColumn(char salad[MAX_SEARCH_FIELD_LEN][MAX_SEARCH_FIELD_LEN], un } } - for (int i = 0; i < wordLen; i++) + for (unsigned int i = 0; i < wordLen; i++) { salad[startRow + i][column] = words[numWord][i]; } diff --git a/Start_Windows/game.h b/Start_Windows/game.h index d8e8d0a..46ed3ac 100644 --- a/Start_Windows/game.h +++ b/Start_Windows/game.h @@ -7,13 +7,13 @@ #define MAX_NUMBER_OF_WORDS 100 int createWordSalad(char salad[MAX_SEARCH_FIELD_LEN][MAX_SEARCH_FIELD_LEN], unsigned int searchFieldLen, const char words[][MAX_WORD_LEN], unsigned int wordCount); -void showWordSalad(const char salad[MAX_SEARCH_FIELD_LEN][MAX_SEARCH_FIELD_LEN], unsigned int searchFieldLen); -int printHorizontal(unsigned int wordCount); +void showWordSalad(const char salad[MAX_SEARCH_FIELD_LEN][MAX_SEARCH_FIELD_LEN]); +int printHorizontal(); int emptyPlaces(unsigned int wordCount); int fillSalad(char salad[MAX_SEARCH_FIELD_LEN][MAX_SEARCH_FIELD_LEN], unsigned int searchFieldLen, const char words[][MAX_WORD_LEN], unsigned int wordCount, int usedWords[MAX_NUMBER_OF_WORDS]); -int whichWord(const char words[][MAX_WORD_LEN], unsigned int wordCount, int usedWords[MAX_NUMBER_OF_WORDS]); -void fillWordinRow(char salad[MAX_SEARCH_FIELD_LEN][MAX_SEARCH_FIELD_LEN], unsigned int searchFieldLen, const char words[][MAX_WORD_LEN], unsigned int wordCount, int numWord, int row); -void fillWordinColumn(char salad[MAX_SEARCH_FIELD_LEN][MAX_SEARCH_FIELD_LEN], unsigned int searchFieldLen, const char words[][MAX_WORD_LEN], unsigned int wordCount, int numWord, int column); +int whichWord(unsigned int wordCount, int usedWords[MAX_NUMBER_OF_WORDS]); +void fillWordinRow(char salad[MAX_SEARCH_FIELD_LEN][MAX_SEARCH_FIELD_LEN], unsigned int searchFieldLen, const char words[][MAX_WORD_LEN], int numWord, int row); +void fillWordinColumn(char salad[MAX_SEARCH_FIELD_LEN][MAX_SEARCH_FIELD_LEN], unsigned int searchFieldLen, const char words[][MAX_WORD_LEN], int numWord, int column); void fillRandom(char salad[MAX_SEARCH_FIELD_LEN][MAX_SEARCH_FIELD_LEN]);