ayuda con juego de la vida de conway

Ethethiel
01 de Abril del 2005
Ola xikos la cuestion esk tengo k aser el juego de la vida de conway y tengo exo lo k es el eskeleto pero toy mu pillao agradeceria muxo una ayudita os pongo por aki el eskeleto y el programa a usar es el dev c++ 5 , thx. cnt lo mas pronto posible me urge muuuuuuuuxo (a poderser esta noxe o mañna por la mañna xD)


/*
* Juego de la Vida
*
* Autor: Laboratorio de Programacion E.T.S.I.I
* Version: 1.0
* Fecha: 21/03/2003
*
* Descriptores:
* - Arrays 2D
*/
#include <iostream>
#include <cstdlib>
#include <ctime>

using namespace std;
/*
* Una bacteria nace cuando el numero de vecinos alcanza el limite maximo.
* Una bacteria muere cuando el numero de vecinos es superior al limite
* maximo (superpoblacion) o cuando es inferior al limite minimo
* (infrapoblacion)
*/
/*
* Configuraciones estables para Vida [2 3]
* + Semaforo
*
* O O
* O => OOO => O
* O O
*
* + Patin (se desplaza)
*
* OO OO OOO O OO
* O O => OO => O => OO => O O
* O O O O O O
*
*/
const int LIM_MAX = 3;// limite maximo (superpoblacion)
const int LIM_MIN = 2;// limite minimo (infrapoblacion)

const int FILAS = 10;// numero de filas del juego
const int COLUMNAS = 10;// numero de columnas del juego
const int FILAS_M = FILAS+2;// numero de filas del juego + margen
const int COLUMNAS_M = COLUMNAS+2;// numero de columnas del juego + margen

/*
* El espacio de trabajo es desde 1 hasta FILAS_M-2 y 1 hasta COLUMNAS_M-2
* dejando un margen de 1 fila y columna alrededor del espacio de trabajo
* para no tenernos que preocupar de los limites
*/
typedef bool Mundo[FILAS_M][COLUMNAS_M];

/*
* Devuelve un numero aleatorio entre 0 y max (exclusive)
*/
int aleatorio(int max)
{
return int(double(rand())*max/(RAND_MAX+1.0));
}

/*
* Inicializa un mundo vacio
*/
void vaciar(Mundo& m)
{
//...
}

/*
* Genera un mundo aleatorio
*/
void generar_aleatorio(Mundo& m, int nelm)
{
//...
}

/*
* Copia un mundo a otro
*/
void copiar(Mundo& dest, const Mundo& orig)
{
//...
}

/*
* Cuenta el numero de vecinos de una determinada casilla
*/
int contar_vecinos(const Mundo& m, int f, int c)
{
//...
}

/*
* Realiza una nueva generacion a partir de la anterior
*/
void generar(Mundo& nuevo, const Mundo& orig, bool hay_cambio)
{
//...
}

/*
* Dibuja una generacion
*/
void dibujar(const Mundo& orig)
{
//...
}

/*
* Juego de la Vida
*/
void juego_vida()
{
//...
}

int main()
{


srand(time(0)); // inicializar el generador de numeros aleatorios

juego_vida();

system("PAUSE");
return 0;
}


Ethethiel
01 de Abril del 2005
este es el enunciado se me olvidaba, thx

El juego de la vida fue ideado por J.H. Conway en 1969. Aunque parezca un juego,
realmente es un modelo de una población de seres vivos idealizados que interactúan con su
entorno. En el núcleo del modelo se encuentra una cuadrícula que representa el "mundo".
Cada cuadrado puede estar ocupado por un ser vivo o puede estar vacío (no se admite más
de un ser vivo en un mismo cuadrado). Al comienzo de la simulación, se seleccionará de
forma aleatoria el número de elementos que contienen vida y en que posición se
encuentran.
La ejecución genera una serie de generaciones, donde cada una de ellas es un mundo
derivado del mundo anterior.
Para cada generación, "nacerá" vida en un determinado cuadrado que no la tenía si en la
generación anterior el numero de vecinos (incluidas las diagonales) era igual a 3. Si en la
generación anterior una determinada casilla tenía vida, ésta morirá si el numero de vecinos
que tenía en dicha generación era inferior a 2 o superior a 3, en otro caso (el número de
vecinos era igual a 2 o 3) continuará con vida.
La simulación continúa hasta que no quede vida en el mundo, o hasta que no haya ningún
cambio en él de una generación a la siguiente.
Nota: Con objeto de visualizar correctamente las generaciones, entre cada generación se
realizará una pausa hasta que se pulse una tecla.
Ejemplo:
........................................
........................................
...............OOO......................
........................................
........................................
........................................
........................O...............
......................OO OO.............
........................O...............
........................................
........................................
........................................
........................................
...............................O........
...............................O........
...............................O........
........................................
Pulse una tecla:
........................................
................O.......................
................O.......................
................O.......................
........................................
........................................
.......................OOO..............
.......................O O..............
.......................OOO..............
........................................
........................................
........................................
........................................
........................................
..............................OOO.......
........................................
........................................
Pulse una tecla:
........................................
........................................
...............OOO......................
........................................
........................................
........................O...............
.......................O O..............
......................O O.............
.......................O O..............
........................O...............
........................................
........................................
........................................
...............................O........
...............................O........
...............................O........
........................................