UNIVERSITY OF CAMBRIDGE COMPUTER LABORATORY
Computer Science Tripos 1975/76
Assessed Exercise No.1
Conway's Game of Life
An infinite rectangular two-dimensional grid is such that at a given "generation" each grid point may or may not be occupied by a single "spot".
Each grid-point is adjacent to eight others (diagonal adjacency is counted) and the rules for determining whether a grid-point is occupied at the next generation are as follows:
By way of example, an isolated L array develops thus:
o o oo oo
ooo oo oo o o
o oo oo
The last pattern is stable since each occupied grid-point is adjacent to two other occupied grid-points and no unoccupied grid-point is adjacent to three occupied ones.
Outline of problem
Write a program to simulate the above, which will accept the following data:
The program should interpret the date and display, in a suitable way, on printer or console paper, the initial arrangement and appropriate subsequent arguments.
Points to note
Specific requirements
After writing the program you should produce a report which includes two parts:
Part 1 should provide very simple documentation sufficient to enable an unskilled user to drive your program. The manner of the presentation of data and the use of defaults must be clearly described. Note that unskilled users like to see EXAMPLES OF COMPLETE JOBS.
Part 2 should document how your program works. You should explain very clearly (WITH DETAILED DIAGRAMS) how the program allocates and manages storage space. Part 2 should enable an experienced programmer to make changes to your program without much effort.
If keywords are permitted in data then (e.g.) ROWS (no quotes) is deemed more acceptable than "ROWS"!
Completed exercises must be handed to Mrs. Hedge by 20 November 1975.
F.H. King
J.K.M. Moody
25 October 1975