Functional requirements (features your program is to implement)

The program must be written and run under python version 3.X.

Reading the starting patterns from a text file (10x10 world) into the 2D list (worth fewer marks). [Directory containing the cases for previous project in the form of text files]

The starting patterns of critters will be in square pattern (10 rows, 10 columns) so your program will only have a fixed size biosphere. Similar to the last mini assignment the name of the input file can be chosen by the user.

  • Prompt the user for the name of the input file & if the file is empty it will display an error message.
  • Open the input file and read the starting pattern of critters and empty spaces into the world.
  • If there is any problems associated with the file (cannot open, file is empty, there is an error during the read process) then the program will display an appropriate error message and repeatedly prompt the user for the name of the input file and begin the file read process anew.

Reading the starting information from any arbitrarily sized rectangle file into the 2D list (worth a greater number of marks) [One example input file]

The starting pattern of critters will be from any sized rectangular sized grid (minimum of 1 row or column a maximum of 20 rows x 30 columns. (Theoretically your program should be handle a larger input file but there may be problems displaying the results in a reasonable fashion).

In order to get credit for these features your program must be able to implement the features from the first part of the project such as:

  • running on a turn by turn basis until the user quits,
  • for each turn update the biosphere based on the specified rules for births and deaths,
  • display the before and after state of the biosphere side by side.

To help you visualize the layout of the starting input files you may want to view an example starting input file with formatting marks turned on in Word. Also you might want to create test files of various sizes using Word (but saving them as .txt files). Of course to be able to check if your program has completed the above tasks successfully the program needs to display the state of the simulation.

Academic Honesty!
It is not our intention to break the school's academic policy. Posted solutions are meant to be used as a reference and should not be submitted as is. We are not held liable for any misuse of the solutions. Please see the frequently asked questions page for further questions and inquiries.
Kindly complete the form. Please provide a valid email address and we will get back to you within 24 hours. Payment is through PayPal, Buy me a Coffee or Cryptocurrency. We are a nonprofit organization however we need funds to keep this organization operating and to be able to complete our research and development projects.