NIM NIM is a simple game that can be played with matchsticks. Two players, in turn, remove a number of matchsticks from the board. The player who left with the last matchstick losses the game. In the board of NIM, the matchsticks are arranged in multiple rows having 2n+1 matchsticks in each row. An example of the board in a 4-line configuration is given below. The rules of the game are as follows • The game is played in turns, • The player can remove matchsticks from only single row in their turn. They can remove any numbers of matchstick from the selected row. How- ever, they cannot remove matchsticks from multiple rows in one turn. • The player who removes the last matchstick losses the game. Mathematically, it is possible to make an unbeatable computer as long as the opponent starts the game. QUESTION Write a C application for NIM game. 1. Prepare Board and Player structures. The Board will hold information about matchsticks, while Player objects will be for interact- ing with the Board. The design of the structures is up to you. Note that you must justify your design with your comments. 2. Prepare the functionality for playing the game, i.e. getting inputs from the user to remove matchsticks until the game ends. 3. Prepare a user interactive interface (in console) for the game, e.g. start the game, show the board, play in two players, play against computer etc.

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question

Please written by computer source

Please solve with C - NIM Game

NIM
NIM is a simple game that can be played with matchsticks. Two players, in
turn, remove a number of matchsticks from the board. The player who left with
the last matchstick losses the game.
In the board of NIM, the matchsticks are arranged in multiple rows having
2n+1 matchsticks in each row. An example of the board in a 4-line configuration
is given below.
I
III
IIIII
IIIIII
The rules of the game are as follows
• The game is played in turns,
• The player can remove matchsticks from only single row in their turn.
They can remove any numbers of matchstick from the selected row. How-
ever, they cannot remove matchsticks from multiple rows in one turn.
• The player who removes the last matchstick losses the game.
Mathematically, it is possible to make an unbeatable computer as long as
the opponent starts the game.
2.
QUESTION
Write a C application for NIM game.
1.
Prepare Board and Player structures. The Board will hold
information about matchsticks, while Player objects will be for interact-
ing with the Board. The design of the structures is up to you. Note that
you must justify your design with your comments.
Prepare the functionality for playing the game, i.e. getting
inputs from the user to remove matchsticks until the game ends.
3.
Prepare a user interactive interface (in console) for the game,
e.g. start the game, show the board, play in two players, play against
computer etc.
Prepare the functionality for making the computer unbeatable.
Hint: computer can maintain the zero nim-sum position.
Transcribed Image Text:NIM NIM is a simple game that can be played with matchsticks. Two players, in turn, remove a number of matchsticks from the board. The player who left with the last matchstick losses the game. In the board of NIM, the matchsticks are arranged in multiple rows having 2n+1 matchsticks in each row. An example of the board in a 4-line configuration is given below. I III IIIII IIIIII The rules of the game are as follows • The game is played in turns, • The player can remove matchsticks from only single row in their turn. They can remove any numbers of matchstick from the selected row. How- ever, they cannot remove matchsticks from multiple rows in one turn. • The player who removes the last matchstick losses the game. Mathematically, it is possible to make an unbeatable computer as long as the opponent starts the game. 2. QUESTION Write a C application for NIM game. 1. Prepare Board and Player structures. The Board will hold information about matchsticks, while Player objects will be for interact- ing with the Board. The design of the structures is up to you. Note that you must justify your design with your comments. Prepare the functionality for playing the game, i.e. getting inputs from the user to remove matchsticks until the game ends. 3. Prepare a user interactive interface (in console) for the game, e.g. start the game, show the board, play in two players, play against computer etc. Prepare the functionality for making the computer unbeatable. Hint: computer can maintain the zero nim-sum position.
Expert Solution
steps

Step by step

Solved in 4 steps

Blurred answer
Knowledge Booster
Intelligent Machines
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education