Krolyxon
Commit 9f5aaec

Branches

Refs →

tros9f5aaec

random list on each level, level up/down system

Author
krolyxon
Date
2023-08-31 18:39 +0530
Parent
9fb3050
Commit
9f5aaecd886e5675c5ff4175d17ab69e232062b7

+32 −4

1 file changed

  1. M src/main.c +32 −4
M src/main.c View
@@ -15,8 +15,7 @@ enum Difficulty {
1515 Hard,
1616 };
1717
18−int list[] = {40, 78, 94, 62, 68, 74, 56, 55, 88, 55, 59, 73,
19− 19, 32, 81, 95, 71, 63, 15, 41, 11, 38, 86};
18+int list[35];
2019
2120 int score = 100;
2221 int level = 1;
@@ -24,28 +23,34 @@ int size = 5;
2423
2524 void decrement_score(enum Difficulty diff);
2625 void level_up();
26+void level_down();
2727 int getrand();
28+void getarr(int size);
2829 enum Difficulty get_difficulty();
2930
3031 int main(int argc, char *argv[]) {
3132 // Get a random number to run a random algorithm
33+ srand(time(0));
3234 int guess;
33− int random_number = getrand();
3435
3536 printf(COLOR_RED);
3637 print_ascii("./assets/banner.txt");
3738 enum Difficulty diff = get_difficulty();
3839
3940 while (level > 0 && level <= 10) {
41+ int random_number = getrand();
4042 printf(BAR);
4143 switch (random_number) {
4244 case 1:
45+ getarr(size);
4346 bubblesort(list, size);
4447 break;
4548 case 2:
49+ getarr(size);
4650 insertionsort(list, size);
4751 break;
4852 case 3:
53+ getarr(size);
4954 selectionsort(list, size);
5055 break;
5156 // case 4: radixsort(list); break;
@@ -66,6 +71,7 @@ int main(int argc, char *argv[]) {
6671 level_up();
6772 } else {
6873 decrement_score(diff);
74+ level_down();
6975 }
7076 printf("Score: %d\n", score);
7177 }
@@ -73,7 +79,6 @@ int main(int argc, char *argv[]) {
7379 }
7480
7581 int getrand() {
76− srand(time(0));
7782 return (rand() % (UPPER - LOWER + 1)) + LOWER;
7883 }
7984
@@ -116,6 +121,29 @@ enum Difficulty get_difficulty() {
116121 }
117122
118123 void level_up() {
124+ if (level == 10) {
125+ printf("Congratulations!! You WON the game");
126+ exit(1);
127+ }
119128 level++;
120129 size += 3;
130+ printf(COLOR_BOLD COLOR_RED
131+ "You have been leveled up to Level %d\n" COLOR_OFF,
132+ level);
133+}
134+
135+void level_down() {
136+ if (level >= 2) {
137+ level--;
138+ size -= 3;
139+ } else {
140+ printf("Too many wrong answers!!, You Lose!");
141+ exit(1);
142+ }
143+}
144+
145+void getarr(int size) {
146+ for (int i = 0; i < size; i++) {
147+ list[i] = rand() % 100;
148+ }
121149 }