Problem Statement: The mathematician Conway imagined a game, called game of life, whichconsidered cells that are susceptible to reproduce, disappear, or survive when they obey certainrules. These cells are represented by elements on a grid of squares, where a grid has an arbitrarysize. Thus, each cell (except those on the boundaries of the grid) is surrounded by eight squaresthat contain other cells. The rules are stated as follows:1. Survival: Each cell that has two or three adjacent cells survives until the next generation.2. Death: Each cell that has at least four adjacent cells disappears (or dies) by overpopulation.Also, each cell that has at most one adjacent cell dies by isolation.3. Birth: Each empty square (i.e., dead cell) that is adjacent to exactly three cells gives birthto a new cell for the next generation.It is worth noting that all births and deaths occur at the same time during a generation.Write a program that simulates this game and displays all successive generations, using any ofyour favorite programming languages.The implementation of this game-of-life software should be as structured as possible.Deliverables: Students may choose to work in team of up to two members. You should turn in areport explaining all the design decisions and your code should be commented appropriately forreadability and understanding. More precisely, a report should include the problem statement,proposed approach/solution along with a detailed discussion, algorithm (high-level description ofall the design parts along with some details when necessary), commented code, tests (input givenby the user and output generated by your program execution), and lessons learned from such animplementation experience.
Already registered? Login
Not Account? Sign up
Enter your email address to reset your password
Back to Login? Click here