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 57 58 59 60 61 62
| Private Sub Command2_Click()
Dim compt As Integer
For T = 1 To lig - 2
For U = 1 To col - 2
idx = (T * col) + U: compt = 0
If T >= 1 And U >= 1 Then
If tab_celule(T, U) = "Vivant" Then
'dans cette condition, Compt peut atteindre 4,
'mais n'est pas traité plus loin ?
'If >>tab_celule(T, U) = "Vivant"<< And tab_celule(T + 1, U) = "Vivant" Then '>>redodance<< pour les 4 conditions suivantes
If tab_celule(T - 1, U) = "Vivant" Then compt = compt + 1
If tab_celule(T + 1, U) = "Vivant" Then compt = compt + 1
If tab_celule(T, U - 1) = "Vivant" Then compt = compt + 1
If tab_celule(T, U + 1) = "Vivant" Then compt = compt + 1
End If
End If
If compt = 2 Then
'une cellule en vie survit si elle a exactement 2 voisins en vie.
tab_vide(T, U) = True
tab_celule(T, U) = "Vivant"
'**** inutile si dans dans aucune autre procedure cette propriété ne serat changée
'Shape1(idx).FillStyle = 0
Shape1(idx).FillColor = vbBlack
Else
If compt = 0 Then
'ne correspond pas à ta loi ???
tab_vide(T, U) = False
tab_celule(T, U) = "Mort"
'**** inutile si dans dans aucune autre procedure cette propriété ne serat changée
'Shape1(idx).FillStyle = 0
Shape1(idx).FillColor = vbRed
End If
End If
If T >= 1 And U >= 1 Then
If tab_celule(T, U) = "Mort" Then
'dans cette condition, Compt peut atteindre 4,
'mais n'est pas traité plus loin ?
'If >>tab_celule(T, U) = "Mort"<< And tab_celule(T + 1, U) = "Vivant" Then'>>redodance<< pour les 4 conditions suivantes
If tab_celule(T - 1, U) = "Vivant" Then compt = compt + 1
If tab_celule(T + 1, U) = "Vivant" Then compt = compt + 1
If tab_celule(T, U - 1) = "Vivant" Then compt = compt + 1
If tab_celule(T, U + 1) = "Vivant" Then compt = compt + 1
End If
End If
If compt = 3 Then
'BON une cellule morte naît si elle a exactement 3 voisins en vie.
tab_vide(T, U) = True
tab_celule(T, U) = "Vivant"
'**** inutile si dans dans aucune autre procedure cette propriété ne serat changée
'Shape1(idx).FillStyle = 0
Shape1(idx).FillColor = vbBlack
End If
Next U
Next T
End Sub |
Partager