#include #include #include void main (void) { apmatrix table(20,20,false); apmatrix action(20,20,false); ifstream infile ("life.txt",ios::in); int n = 0; infile >> n; for (int g = 0;g < n;g++) { int y,z; infile >> y;infile >> z; table[y][z] = true; } char x; do { for (int c = 0;c < 20;c++) { cout << "\n"; for (int d = 0;d < 20;d++) { if (table[d][c]) cout << "*"; else cout << " "; } } for (int a = 0;a < 20;a++) { for (int b = 0;b < 20;b++) { int neighbors = 0; if (a-1 >= 0) { if (b - 1 >= 0) if (table[a-1][b-1]) neighbors++; if (b + 1 <= 19) if (table[a-1][b+1]) neighbors++; if (table[a-1][b]) neighbors++; } if (a+1 <= 19) { if (b - 1 >= 0) if (table[a+1][b-1]) neighbors++; if (b + 1 <= 19) if (table[a+1][b+1]) neighbors++; if (table[a+1][b]) neighbors++; } if (b+1 <= 19) if (table[a][b+1]) neighbors++; if (b-1 >= 0) if (table[a][b-1]) neighbors++; if (table[b][a]) { if (neighbors < 2 || neighbors > 3) action[b][a] = true; } else if (neighbors == 3) action[b][a] = true; } } for (int l = 0;l < 20;l++) { for (int k = 0;k < 20;k++) { if (action[k][l]) if (table[k][l]) table[k][l] = false; else table[k][l] = true; action[k][l] = false; } } cout << "\n"; cin >> x; } while (x != 'q'); }