It iterates over all the values possible within the given range and sets theīoundary values to -1. # initalizing the starting grid of size 22X62.Ĭreates a array of the given size filling it with alive cells at random.Īrray - the array to fill with initial values. # temp list for stroring the grid from file Print("2: Generate random grind of size 11X40") Print("1: Read initial grid from file 'grid.txt'") Printing the representation of alive cells (*) and dead cells (.) to Simple double for loop for iterating over contents of the array and Gen - the number of the current generation If cur_gen = 0 and neighbor_count = 3:įunction to handle printing each generation # always reflect the number of cells alive. This can either be 0 or 1, but the total will # The count is incremented by whatever value is contained by the # x-1, x+1 we need to set the right interval of the range() method to x+2 # range() method in pyhton is exclusive, therefore to select the range between Of the cell( weather it is dead or alive ). It then checks the 4 rules of Conway's game of life and returns the value Sets the neighbor_count variable to the number of alive cells. The function first iterates over all the neighbors of the given cell and Y - column coordinate of the current cell Returns the value for a given cell in the next generation Next_gen = self.process_neighbors(i, j, cur_gen)ĭef process_neighbors(self, x, y, cur_gen): Iterates over current generation array and sets the values for theĬells in the array for the next generation by processing the neighbors Next_gen - array representing the next generation Press any key to exit")ĭef process_next_gen(self, cur_gen, next_gen):Ĭur_gen - array representing the current generation The process until it has finished running the simulation for num_gen Generation and swaps the current genration with the next one and repeats It prints the current generation,processses the next This function creates a temp array of same size as the cur_gen array with More information about Conway’s Game of Life can be found at and more information about Martin Gardner at The Program in Action When you run conwaysgameoflife. If(i = 0 or j = 0 or (i = self.rows - 1) or ( j = ls - 1 )):Ĭur_gen - the array representing the current generation If (i = 0 or j = 0 or (i = len(array) - 1) or (j = len(array) - 1)): Once the values are loaded, it checks for the boundaries and sets Using python's with keyword the values of the grid are loaded into the array Reads a given grid from a text file and sanitizes it to be used with theĪrray - the array into which the grid is loaded. Here is the version with a class: # Object oriented implementaition of Conway's Game of lifeĭef _init_(self, rows, cols, delay, num_generations,\ I've implemented Game of Life in Python for a programming problem, in two different versions: one is a simple script and the other uses a class with a dictionary to initialize the various parameters.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |