From aaeac6d46791de3ab005f84124580e4f590ecb9c Mon Sep 17 00:00:00 2001 From: XOR Date: Tue, 8 Nov 2022 22:51:14 +0100 Subject: [PATCH] Add creation of Gap_sentence TODO: Add lenght value to Gap_sentence --- Aufgabe 1/main | Bin 0 -> 23984 bytes Aufgabe 1/main.c | 69 ++++++++++++++++++++++++++++++++++++++++------- 2 files changed, 59 insertions(+), 10 deletions(-) create mode 100755 Aufgabe 1/main diff --git a/Aufgabe 1/main b/Aufgabe 1/main new file mode 100755 index 0000000000000000000000000000000000000000..ac5d3634de6e706984db921b4084e57d66632660 GIT binary patch literal 23984 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 N?VkR=DupUi{5x^ojhz4h literal 0 HcmV?d00001 diff --git a/Aufgabe 1/main.c b/Aufgabe 1/main.c index c28ef79..8f98e9b 100644 --- a/Aufgabe 1/main.c +++ b/Aufgabe 1/main.c @@ -1,5 +1,5 @@ #include -//#include +#include #define SIZEOFARR(a) (sizeof(a)/sizeof(a[0])) @@ -16,6 +16,13 @@ unsigned short int arrContains(char checkForVal, char *checkInArr, int arrSize) return 0; } +struct Gap_sentence +{ + char words[100][50]; + __uint8_t gapsizes[100]; +}; + + int main(int argc, char const *argv[]) { char words[30000][20]; @@ -31,8 +38,8 @@ int main(int argc, char const *argv[]) } - int word = 0; - int character = 0; + int word_index = 0; + int character_index = 0; int word_found = 0; //checks if multiple spaces are behind each other, we don't want to add a new word while(1){ char curr_char = fgetc(fp); @@ -48,24 +55,66 @@ int main(int argc, char const *argv[]) { if (word_found) { - word++; - character = 0; + word_index++; + character_index = 0; word_found = 0; } } else{ word_found = 1; - words[word][character]=curr_char; - character++; + words[word_index][character_index]=curr_char; + character_index++; } } - for(int i=0; i<=word;i++){ - fprintf(fpp,"%s ", words[i]); - printf("%s ",words[i]); + //Get sentence with gap + FILE *gap_file; + struct Gap_sentence gap_sentence; + gap_file = fopen("/home/xor/coding/BwInf_41_1/Aufgabe 1/stoerung0.txt","r"); + + word_index = 0; + character_index = 0; + word_found = 0; + short int file_read = 0; + while(!file_read){ + char curr_char = fgetc(gap_file); + switch (curr_char) + { + case EOF: + file_read = 1; + break; + case ' ': + /*only begin a new word, if the last characters were part of a word + or if the next character is part of a word as we dont want to save the next word in the index where + the last underscores were counted (and therefore word_index was not increased)*/ + if(word_found || *gap_file->_IO_read_ptr != '_') + { + word_index++; + word_found=0; + character_index = 0; + } + break; + case '_': + gap_sentence.gapsizes[word_index]++; + break; + default: + word_found = 1; + gap_sentence.words[word_index][character_index] = curr_char; + character_index++; + break; + } + } + + + for (int i = 0; i < 10; i++) + { + printf("%s | ",gap_sentence.words[i]); + printf("%d\n",gap_sentence.gapsizes[i]); + } + return 0; } \ No newline at end of file