Python - No se porque no me genera la nueva generacion

 
Vista:
sin imagen de perfil
Val: 4
Ha disminuido su posición en 20 puestos en Python (en relación al último mes)
Gráfica de Python

No se porque no me genera la nueva generacion

Publicado por Daniel (3 intervenciones) el 01/06/2017 01:14:06
Tengo que hacer el juego de la vida de Conwell, pero el codigo no me genera la nueva generacion
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
import random
 
filas = 5
columnas = 5
 
matriz = []
 
 
for fila in range(filas):
    matriz.append([0] * columnas)
 
 
for fila in range(filas):
    for columna in range(columnas):
        matriz[fila][columna] = random.randint(0,1)
print matriz
 
def analisis_de_vecinos():
    for fila in range(filas):
        for columna in range(columnas):
            vecinos = 0
            if matriz[fila][columna-1]==1:
                vecinos += 1
            if matriz[fila][columna+1]==1:
                vecinos += 1
            if matriz[fila-1][columna]==1:
                vecinos += 1
            if matriz[fila+1][columna]==1:
                vecinos += 1
            if matriz[fila-1][columna-1] == 1:
                vecinos += 1
            if matriz[fila-1][columna+1]==1:
                vecinos += 1
            if matriz[fila+1][columna-1]==1:
                vecinos += 1
            if matriz[fila+1][columna+1]==1:
                vecinos += 1
            return vecinos
 
for fila in range(filas):
    for columna in range (columnas):
        vecinos = analisis_de_vecinos()
        if matriz[fila][columna] == 1:
            if vecinos <= 1:
                matriz[fila][columna] = 0
            if vecinos >=2 and vecinos <=3:
                matriz[fila][columna] = 1
            if vecinos >= 4:
                matriz[fila][columna] = 0
        if matriz[fila][columna] == 0:
            if vecinos == 3:
                matriz[fila][columna] = 1
            else:
                matriz[fila][columna] = 0
 
print matriz
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder