void evolue (grille *g, grille *gc){ copie_grille (*g,*gc); // copie temporaire de la grille int i,j,l=g->nbl, c = g->nbc,v; for (i=0; i<l; i++) { for (j=0; j<c; ++j) { v = compte_voisins_vivants (i, j, *gc); if (est_vivante(i,j,*g)) { // evolution d'une cellule vivante if ( v!=2 && v!= 3 ) set_morte(i,j,*g); } else { // evolution d'une cellule morte if ( v==3 ) set_vivante(i,j,*g); } } } return; }
void evolue (grille *g, grille *gc){ copie_grille (*g,*gc); // copie temporaire de la grille int i,j,l=g->nbl, c = g->nbc,v; for (i=0; i<l; i++) { for (j=0; j<c; ++j) { if (est_viable(i,j,*g)){ // TODO : encapsuler le code d'évolution dans ce test v = compte_voisins_vivants (i, j, *gc); if (est_vivante(i,j,*g)) { // evolution d'une cellule vivante if ( v!=2 && v!= 3 ) set_morte(i,j,*g); else set_continue_vie(i,j,*g); // a ajouter } else { // evolution d'une cellule morte if ( v==3 ) set_vivante(i,j,*g); } } } } return; }