Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

python 3.6 Conway's Game of Life Python 3.6 1 . count_neighbors(grid, r, c): Given a Grid and two integers indicating row/column position, count how many

python 3.6 Conway's Game of Life

image text in transcribed

Python 3.6

 1. count_neighbors(grid, r, c): 

Given a Grid and two integers indicating row/column position, count how many living neighbors there are. When a cell is on the edge or corner of our Grid, treat all none-existent neighbor positions as dead (they don't contribute to the returned count). Assume: the grid is a Grid; live and dead are strings of length one. Examples all use the grid g drawn to the right.

g = [[False, False, False, False, True], [False, False, True, True, False], [False, True, False, False, True], [False, False, True, False, True], [False, False, False, True, False]] count_neighbors(g, 0, 0)  0 count_neighbors(g, 0, 4)  1 count_neighbors(g, 2, 4)  2 count_neighbors(g, 3, 2)  2 count_neighbors(g, 2, 3)  5 

image text in transcribed2. next_gen(grid):

Given a Grid, create and return a new Grid that represents the next generation. Note that you will not be modifying the original Grid value each cell's next state is dependent on its neighbors' previous state, so updating one cell at a time would incorrectly mix generation info.

Assume: grid is a Grid.

Hint: Use previous definitions!

Examples based on the GridStrings

shown in GridString definition.

boat_grid = [[False, False, False, False, False], [False, True, True, False, False], [False, True, False, True, False], [False, False, True, False, False], [False, False, False, False, False]]

blinkerA_grid = [[False, False, False, False, False], [False, False, True, False, False], [False, False, True, False, False], [False, False, True, False, False], [False, False, False, False, False]]

blinkerB_grid = [[False, False, False, False, False], [False, False, False, False, False], [False, True, True, True, False], [False, False, False, False, False], [False, False, False, False, False]]

toad_grid = [[False, False, False, False, False, False], [False, False, False, True, False, False], [False, True, False, False, True, False], [False, True, False, False, True, False], [False, False, True, False, False, False], [False, False, False, False, False, False]]

pulsar_grid = [[False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False], [False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False], [False, False, False, False, True, True, True, False, False, False, True, True, True, False, False, False, False], [False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False], [False, False, True, False, False, False, False, True, False, True, False, False, False, False, True, False, False], [False, False, True, False, False, False, False, True, False, True, False, False, False, False, True, False, False], [False, False, True, False, False, False, False, True, False, True, False, False, False, False, True, False, False], [False, False, False, False, True, True, True, False, False, False, True, True, True, False, False, False, False], [False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False], [False, False, False, False, True, True, True, False, False, False, True, True, True, False, False, False, False], [False, False, True, False, False, False, False, True, False, True, False, False, False, False, True, False, False], [False, False, True, False, False, False, False, True, False, True, False, False, False, False, True, False, False], [False, False, True, False, False, False, False, True, False, True, False, False, False, False, True, False, False], [False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False], [False, False, False, False, True, True, True, False, False, False, True, True, True, False, False, False, False], [False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False], [False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False]]

next_gen(gridA) gridBcopy

next_gen(gridB) gridAcopy

next_gen(gridC) gridCcopy

image text in transcribed

3. n_gens(grid, n=20):

Given a Grid and a positive integer of how many generations to store, utilize your next_gen function to create a list with n generations in it, where the given grid is included as the first generation.

Assume: grid is a Grid; n is a positive integer that may default to 20 when not given.

Hints:

Use your next_gen definition!

you are returning a list of Grid values it is a list that is 3 levels deep!

The examples would get pretty large rn indicates the same numbered generations from the page

of r_pentomino steps; gridA, gridB, and gridC are also defined above (blinker and boat).

r_pentomino_grid = [[False, False, False, False, False, False, False, False, False, False, False, False], [False, False, False, False, False, False, False, False, False, False, False, False], [False, False, False, False, False, False, False, False, False, False, False, False], [False, False, False, False, False, False, False, False, False, False, False, False], [False, False, False, False, False, False, False, False, True, True, False, False], [False, False, False, False, False, False, False, True, True, False, False, False], [False, False, False, False, False, False, False, False, True, False, False, False], [False, False, False, False, False, False, False, False, False, False, False, False], [False, False, False, False, False, False, False, False, False, False, False, False], [False, False, False, False, False, False, False, False, False, False, False, False]]

acorn_grid = [[False, False, False, False, False, False, False, False, False], [False, False, True, False, False, False, False, False, False], [False, False, False, False, True, False, False, False, False], [False, True, True, False, False, True, True, True, False], [False, False, False, False, False, False, False, False, False]]

gosper_glider_grid = [[False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False], [False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, True, False, False, False, False, False, False, False, False, False, False, False, False], [False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, True, False, True, False, False, False, False, False, False, False, False, False, False, False, False], [False, False, False, False, False, False, False, False, False, False, False, False, False, True, True, False, False, False, False, False, False, True, True, False, False, False, False, False, False, False, False, False, False, False, False, True, True, False], [False, False, False, False, False, False, False, False, False, False, False, False, True, False, False, False, True, False, False, False, False, True, True, False, False, False, False, False, False, False, False, False, False, False, False, True, True, False], [False, True, True, False, False, False, False, False, False, False, False, True, False, False, False, False, False, True, False, False, False, True, True, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False], [False, True, True, False, False, False, False, False, False, False, False, True, False, False, False, True, False, True, True, False, False, False, False, True, False, True, False, False, False, False, False, False, False, False, False, False, False, False], [False, False, False, False, False, False, False, False, False, False, False, True, False, False, False, False, False, True, False, False, False, False, False, False, False, True, False, False, False, False, False, False, False, False, False, False, False, False], [False, False, False, False, False, False, False, False, False, False, False, False, True, False, False, False, True, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False], [False, False, False, False, False, False, False, False, False, False, False, False, False, True, True, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False], [False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False]]

n_gens(r_pentomino,3) [r0, r1, r2] # see the last page

n_gens(gridA,5) [gridA, gridB, gridA, gridB, gridA]

n_gens(gridB,3) [gridB, gridA, gridB]

n_gens(gridC,4) [gridC, gridC, gridC, gridC]

n_gens([[False]]) [[[False]], [[False]], [[False]], [[False]], [[False]], [[False]], [[False]], [[False]], [[False]], [[False]], [[False]], [[False]], [[False]], [[False]], [[False]], [[False]], [[False]], [[False]], [[False]], [[False]]]

#20 iterations provided by default

image text in transcribed

image text in transcribedimage text in transcribed

Thank in advance

count_1iving(grid): Given a Grid, count how many live cells there are; return that number o Assume: grid is a Grid o count-living([ [True, False,False], o count_living(True, True]]) [True,False,True], [False,False, True]]) 4 any_living(grid): Given a Grid, determine if any live cells are present. Return the bool answer o o o Assume: grid is a Grid any-living([[True, False, False], [True, False, True]]) any-living([[False,False, False],[False, False,False]]) True False on_grid(grid, r, c): Given a Grid and two integers indicating row/column position, determine if (r,c) is on the grid and return the answer as a boolean. o Assume: grid is a Grid; r and c are integers. o Hint: Remember, the grid is zero-indexed, and negative indexes are not to be used. o Examples use MxN on-grid 3x5 on-grid(c3x5 on-grid 3x5 on-grid(1x3 grid> as non-code placeholders for Grids, so that the examples are small grid, grid, grid>, grid>, ) -1,-1) 4) 1,3) True False True False , o # negatives not allowed 2, # bottom-right corner # o zero-indexing, remember? count_neighbors(grid, r, c): Given a Grid and two integers indicating row/column position, count how many living neighbors there are. When a cell is on the edge or corner of our Grid, treat all non- existent neighbor positions as dead (they don't contribute to the returned count) o Assume: grid is a Grid; live and dead are strings of length one. o Hint: Use your on grid definition! o Examples all use the grid g drawn to the right. . count-neighbors(g, , ) . count-neighbors(g,e, 4) count neighbors(g, 2,4) count_neighbors (g, count-neighbors(g, 3, 2, 2) 3)

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Relational Database Design A Practical Approach

Authors: Marilyn Campbell

1st Edition

1587193175, 978-1587193170

More Books

Students also viewed these Databases questions

Question

How to solve maths problems with examples

Answered: 1 week ago

Question

Explain Coulomb's law with an example

Answered: 1 week ago

Question

What is operating system?

Answered: 1 week ago

Question

What is Ohm's law and also tell about Snell's law?

Answered: 1 week ago