Question: Using the program given. Add an option 4 to your menu for Play Bingo read in a bingo call (e,g, B6, I17, G57, G65) checks

Using the program given. Add an option 4 to your menu for Play Bingo read in a bingo call (e,g, B6, I17, G57, G65) checks to see if the bingo call read in is valid (i.e., G65 is not valid) marks all the boards that have the bingo call checks to see if there is a winner, for our purposes winning means 5 tokens in a row or column 5 tokens in a diagonal 1 token in each of the 4 corners of the game board Loop accepting bingo calls until there is a winner, and display an appropriate message specifying which user won.

Given program:

#include #include #include int get_random_number(int min, int max) { return min + (rand() % (max - min + 1)); } int min_for_col(int column_index) { return (column_index * 15) + 1; }

int max_for_col(int column_index) { return (column_index + 1) * 15; }

void print_bingo_card(int cards[5][10][5][5], int player, int card) {int i, j;

printf("B I N G O "); for(i = 0; i < 5; ++i) { for(j = 0; j < 5; ++j) { if(i == 2 && j ==2) { printf("F "); }

else{ printf("%2d ", cards[player][card][i][j]); } } printf(" "); } printf(" "); } int main () { srand(time(NULL)); int num_players, num_cards, i, j, k, l, m, num; int bingo_cards[5][10][5][5]; int count[75]; int num_rows = 5, num_cols = 5; int already_exists = 0; printf("Enter number of players:"); //asking for player count scanf("%d", &num_players);//scanning user input printf("Enter number of cards per players:");//Asking for number of cards per person. scanf("%d", &num_cards);//scanning user input

for(i = 0; i < num_players; ++i){ for(j = 0; j < num_cards; ++j){ for (k = 0; k < num_cols; ++k) { for(l = 0; l < num_rows; ++l){ while(1) { num = get_random_number(min_for_col(k), max_for_col(k)); already_exists = 0; for(m = 0; m < 1; ++m){ if(bingo_cards[i][j][m][k] == num){ already_exists = 1; } }

if(already_exists == 0){ break; } } bingo_cards[i][j][l][k] = num; } } } } //histogram calculations for( i = 0; i < 75; ++i){ count[i] = 0; }

for(i = 0; i < num_players; ++i){ for(j = 0; j < num_cards; ++j){ for (k = 0; k

while(1){ //while(1) means while true. so the loop continues to loop until the user presses 3 to exit the loop. printf("Press 1 to select user bingo card to display "); printf("Press 2 to show histogram "); printf("Press 3 to exit "); printf("Please enter your choice: ");//asking for user input scanf("%d", &i);//reading user input switch(i){

case 1:

printf("Enter player number(%d-%d): ", 1, num_players); scanf("%d", &j); printf("Enter card number(%d-%d):", 1, num_cards); scanf("%d", &k); print_bingo_card(bingo_cards, j - 1, k - 1); break;

case 2:

for (j = 0; j < 75; ++j) { printf("%2d: ", j + 1); for(k = 0; k < count[j]; ++k) { printf("*"); /* when the histogram option is selected, numbers rangine from 1-75 will be shown. The asterisk will represent how many times each number has appearead on the cards.*/ } printf(" "); } break;

case 3:

return 0;

default: //in case the user inputs an invalid number they are told to make another selection. printf("Invalid Choice. Make another selection."); break; } } return 0; }

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!