[Solved] CSE 102 –Homework 5

30 $

File Name: CSE_102_–Homework_5.zip
File Size: 197.82 KB

SKU: [Solved] CSE 102 –Homework 5 Category: Tag:

Or Upload Your Assignment Here:


CSE102 – Computer Programming (Spring 2018)Homework #5Description: In this homework, you will implement Turkish Draughts board game. The rules of the gameare listed below.1) There is a 8×8 board.2) Each player starts with 16 men (white and black) placed on all the squares of the second andthird rows (see Figure 1). All the squares are used.3) Men´s moves: They move one square horizontally or vertically forwards, never backwards (seeFigure 2).4) Kings moves: They move and jump vertically and horizontally any number of squares (see Figure2).5) A man captures by jumping to a vacant square in the moveable direction (rule 3) beyond a pieceof the opponent.6) A king captures by jumping to a vacant square beyond an adverse piece, any distance away.7) Maximum capture compulsory: If there are two or more different chances to make capture, it iscompulsory to make the move that captures the maximum amount of the opponent´s pieces.8) Taking away the captured pieces: Captured pieces are taken away from the board.9) If a player has no legal move he loses the game. This may come about either by being eliminatedor being blocked completely – no moves left.You must use the functions listed below. You may add other functions if you think there is need for it.typedef enum {white_man, black_man, white_king, black_king, empty} piece;You must use this enumeration to define the pieces on the board.typedef enum {white = 10, black = 20} player;You must use this enumeration to define the players.void init_board(piece board[][8]);This function initializes the board as mentioned in the second rule.int move(piece board[][8], int from_x, int from_y, int to_x, int to_y, player p);This function checks if the given player p can move a piece belonging to it from location (from_x,from_y) to location (to_x,to_y). If the players move is not allowed the function returns: -1: The player p is trying to move a piece that does not belong to him. -2: The move is not allowed. n>=0: The move is allowed and it is executed with n of opponents pieces captured.int check_end_of_game(piece board[][8]);This function checks if the game has been completed after the move. It returns: -1: Game continues. white: White wins the game. black: Black wins the game.void display_board(piece board[][8]);This function displays the board in current state. The following symbols should be used forprinting: ‘-‘: Empty squares. ‘b’: The regular black pieces. ‘B’: The black kings. ‘w’: The regular white pieces. ‘W’: The white kings.Sample outputs are shown below:void sample_game_1();This function should use the above functions to play end-to-end a game. You may want to find afamous game and replay it in this function.void sample_game_2();This function should use the above functions to play the game given in the following gifanimation.http://damaakademisi.com/wp-content/uploads/2009/02/10puan_1.gifFigure 1 Starting position.Figure 2 Men’s (left) and king’s (right) moves.

Reviews

There are no reviews yet.

Only logged in customers who have purchased this product may leave a review.

Shopping Cart
[Solved] CSE 102 –Homework 5
30 $