Answered step by step
Verified Expert Solution
Question
1 Approved Answer
Question 1 (30 points) It's time to put all of your Python skills to work. For the first time we are giving you a non-trivial
Question 1 (30 points) It's time to put all of your Python skills to work. For the first time we are giving you a non-trivial problem, but only describing the problem that needs to be solved, and giving you very little guidance on how to solve it. You are allowed to use any of the Python language features and problem solving methods that we have discussed in class or used on assignments or in labs in order to solve the problem. You will be graded not only for correctness, but also for making good choices about how you store data, how your organize your program, how well you document (comment) your program, and how well you test your program. Problem Description Pokemon are fantastic creatures that people can catch and train, and many Pokemon trainers aspire to catch as many as possible . Imagine that you have caught so many Pokemon that you have decided to acquire your own farm to feed them. Your farm is an NxN plot of fruit trees, and there are potentially five different types of fruits that can grow on the farm: firefruits, waterfruits, grassfruits, joltfruits and the very rare megafruit Initially. your farm is mostly empty, with just a few fruit trees placed here and there. However, each spring the fruit trees will spread to adjacent locations in the farm (using a process described further below). Each fall you will harvest the different types of fruit from all of the trees on your farm. Your task for this assignment is to write a program that will simulate the growth of your farm over time and report the total fruit yield by the time the farm is done growing Problem Details Initial conditions We will visualize the farm as an NaN grid of characters, where an underscorerepresents an empty space for a fruit tree, and a letter represents a fruit tree of the corresponding type (F for firefruit tree, W for waterfruit tree, etc..). The initial conditions for the farm will come from a file so you will have to do some file input to set up your farm. Be careful: the file format for the input file will NOT look like the visualization of the farm (just described), but will instead be much more compact. It will look like this 4 0,0 1,0 2,0 3,0 0,3 1,3 2,3 3,3 The first line of the file is a single integer indicating the dimensions of the farm (the farm is always square) This is followed by exactly 4 more lines, one line for each type of basic fruit tree in this order: firefruit waterfruit, grassfruit, joltfruit On each line will be one or more sets of (row.column) coordinate pairs rep- resenting the intial locations of the fruit trees. The coordinate pairs on the same line are separated from each other by spaces and the row and column for each pair are separated by a comma. Below is a visual- ization of the farm that is represented by the input file above. Make sure you understand how the input file matches up to the grid picture before going any further
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started