diff options
| author | Aargh Rai <aargh.rai+git@gmail.com> | 2026-06-15 11:35:44 +0530 |
|---|---|---|
| committer | Aargh Rai <aargh.rai+git@gmail.com> | 2026-06-15 11:35:44 +0530 |
| commit | 42567a5ac86b20f2a591195e6ec389d5d2cc7ce7 (patch) | |
| tree | f5c234be59b93b8a0554a19b187d1ca340a28c01 /src/modes.c | |
| parent | 799fbacdf0fb018f279de5f4f55a22c601bffc46 (diff) | |
seperated in different files
Diffstat (limited to 'src/modes.c')
| -rw-r--r-- | src/modes.c | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/src/modes.c b/src/modes.c new file mode 100644 index 0000000..9b63431 --- /dev/null +++ b/src/modes.c @@ -0,0 +1,38 @@ +#include <stdio.h> +#include <stdlib.h> +#include <string.h> + +#include "modes.h" +#include "words.c" + +int word_mode(int length, bool newline, bool capitalize) { + for (int i = 0; i < length; i++) { + int index = rand() % WORDS_COUNT; + char word[1024]; + strncpy(word, words[index], 1024); + if (i == 0 && capitalize) word[0] += 'A' - 'a'; + if (i == length - 1) printf("%s", word); + else printf("%s ", word); + } + if (newline) printf("\n"); + return 0; +} + +int sentence_mode(int length, bool newline) { + for (int i = 0; i < length; i++) { + int size = 10 + rand() % 20; + word_mode(size, false, true); + printf(". "); + if (newline) printf("\n"); + } + return 0; +} + +int paragraph_mode(int length, bool newline) { + for (int i = 0; i < length; i++) { + int size = 6 + rand() % 10; + sentence_mode(size, false); + if (newline) printf("\n\n"); + } + return 0; +} |
