From b2a90fbd45fc3c68746ee065804e82e150cd8863 Mon Sep 17 00:00:00 2001 From: fdlt3914 Date: Fri, 3 Feb 2023 11:05:57 +0000 Subject: [PATCH] smart_brain: vary round 1 and 2 questions --- src/main/quizproject.c | 37 ++++++++++++++++++++++++------------- src/main/quizproject.h | 5 ++--- 2 files changed, 26 insertions(+), 16 deletions(-) diff --git a/src/main/quizproject.c b/src/main/quizproject.c index b2d302a..b7fb5bb 100644 --- a/src/main/quizproject.c +++ b/src/main/quizproject.c @@ -47,11 +47,12 @@ void e_display_instruction() { -void e_usr_answr(char question[][100], char ans[], int initial, int end){ +void e_usr_answr(char question[][100], char ans[], int initial, int end, int randChar[]){ int i; char user_answer; for(i = initial; i < end; i++) { - printf("[%d]. %s", i + 1, question[i]); + int rNum = randChar[i]; + printf("[%d]. %s", i + 1, question[rNum]); scanf(" %c", &user_answer); user_answer = toupper(user_answer); while (user_answer != 'T' || user_answer != 'F' ){ @@ -64,12 +65,12 @@ void e_usr_answr(char question[][100], char ans[], int initial, int end){ } } bool ans1 = e_true_false(user_answer); - if(ans1 == ans[i]) { + if(ans1 == ans[rNum]) { score++; - track_r2_score++; - if(track_r2_score >= 2) { - track_r2_score = 0; + if(i > 2) { + track_r2_score++; } + correct(score); } else{ wrong(score); @@ -79,23 +80,25 @@ void e_usr_answr(char question[][100], char ans[], int initial, int end){ } -void e_t_f_printQuestions(char askquestion[][100],char answers[]) { +void e_t_f_printQuestions(char askquestion[][100],char answers[], int charArr[]) { int track_rounds = 0; while(track_rounds < 1){ printf("\t\t---------------------------Round1-----------------------------\n"); printf("\t\t >>In this round you will be presented with 3 questions.<<\n"); + printf("\t\t>>You need to answer 2 questions correctly to move to Round 2<<\n"); printf("\t\t--------------------------------------------------------------\n\n"); int init = 0, end = 3; - e_usr_answr(askquestion,answers, init, end); + e_usr_answr(askquestion,answers, init, end,charArr); if(score < 2) { break; } else { printf("\t\t---------------------------Round2-----------------------------\n"); printf("\t\t >>In this round you will be presented with 2 questions.<<\n"); + printf("\t\t>>A false answer to any questions means you lose and out of the Game<<\n"); printf("\t\t--------------------------------------------------------------\n\n"); init = 3, end = 5; - e_usr_answr(askquestion,answers, init, end); + e_usr_answr(askquestion,answers, init, end, charArr); } track_rounds++; } @@ -123,8 +126,16 @@ void e_ask_questions(void) { false }; - - e_t_f_printQuestions(e_t_f_question, e_t_f_solution); + int* randChar = randomNumber(); + int charArr[7]; + int p1 = 0; + for(int k = 0; k < 13; k++) { + if (randChar[k] < 7) { + charArr[p1] = randChar[k]; + p1++; + } + } + e_t_f_printQuestions(e_t_f_question, e_t_f_solution, charArr); } bool e_true_false(char choice) { @@ -192,7 +203,7 @@ void e_printout_r3 (char question[][100], char answers[][100]) { void e_smart_brain() { e_display_instruction(); e_ask_questions(); - if(score >=4 && track_r2_score ==0) { + if(score >=4 && track_r2_score ==2) { e_questions_r3(); } score = 0; @@ -1013,7 +1024,7 @@ void b_entertostart() { void B_userinfo(void){ char info[100] = {0}; printf("How old are you?\n"); - scanf("%d", &info); + scanf("%s", info); printf("\t\t Nice!!!\n\n"); } diff --git a/src/main/quizproject.h b/src/main/quizproject.h index eaa18a3..6a82bed 100644 --- a/src/main/quizproject.h +++ b/src/main/quizproject.h @@ -37,11 +37,11 @@ void million_exit(int million_a); void e_press_key_start(void); void e_display_instruction(void); -void e_t_f_printQuestions(char [][100],char []); +void e_t_f_printQuestions(char [][100],char [], int []); void e_ask_questions(void); void e_smart_brain(void); bool e_true_false(char); -void e_usr_answr(char [][100], char [], int, int); +void e_usr_answr(char [][100], char [], int, int,int []); void e_questions_r3(void); void e_printout_r3 (char [][100], char [][100]); int track_r2_score = 0; @@ -51,7 +51,6 @@ int track_r2_score = 0; void B_displayWelcomeMessage(void); void B_username(void); void b_entertostart(void); -int toupper(int _c); void B_sayhello(char name[]); void B_userinfo(void); void B_displayGameInstructions(void);