Maria Bel Fraguas G03 Puesto 01 Programa juego de la vida · Solo he usado un tipo, el tablero, que es una matriz hasta 20x20 de enteros. · He creado un procedimiento para el tamaņo del tablero ya que lo decide el usuario asi que he pasado el tamaņo del tablero como parametro de referencia ya que el usuario lo cambia. · Luego otro para dibujar el tablero al que le paso como parametro de entrada el tamaņo elegido anteriormente y el tablero del juego, para que me haga la matriz, asi sale cada vez que haces uno nuevo o que cambia de generacion. Lo he hecho con parentesis ponendo dentro: 1 si esta viva la celula y 0 si esta muerta. · La probabilidad se la pido al usuario y he hecho una funcion, ya que no necesitas pasarle parametros lo unico que se necesita es que devuelva un real que es el valor de probabilidad que elige el usuario entre 0 y 1. · Para que me cree el mundo aleatorio he hecho otro procedimiento al que le paso el tablero (la matriz),la probabilidad anteriormente elegida en la funcion de probabilidad y el tamaņo de la matriz. En el procedimiento recorro la matriz con dos for y miro si el numero aleatorio que me da el programa es menor o igual a la probabilidad introducida por el usuario. · El numero de turnos lo he pedido con una funcion la cual me devuelve un entero que es el numero de turnos que ha introducido el usuario y son los turnos que desea el usuario jugar. · Para las reglas del juego he hecho otro procedimiento, en el que he puesto los valores para x,y,z como parametros de referencia, dados en el enunciado y se los muestro al usuario, y le pregunto si quiere cambiarlos, asi el puede elegir esos valores o introducir unos nuevos, los que el quiera pero como maximo puede poner 8 ya que una celula solo tiene 8 vecinas como maximo. · El procedimiento de generacion es para cuando ejecuto turnos, al cual le paso como parametros dos matrices, el tamaņo de la matriz y la x,y,z elegidas anteriormente, para cada turno del juego. Se recorre toda la matriz, mira celula a celula y comprueba las que tiene alrededor, las 8 celulas que redean a la que estoy comprobando y va sumando las vivas que tiene alrededor, luego si la celula que se mira esta muerta y el numero de vivas alrededor coincide con x esta revive y si esta viva y el numero de vivas alrededor esta en el intervalo entre y-z esta seguira viva sino morira. · Luego he puesto la funcion de cargar mundo que ponia en el add, para el punto 3 del menu del programa principal. · En el programa principal he hecho el menu, para elegir la opcion segun lo que quieras hacer hasta que el usuario introduce el 4 que es para salir del programa, mientras no elija el 4 el usuario el programa despues de una opcion ejecutada le pide al usuario otra opcion asi hasta que elija salir del programa que es la 4. En la opcion 1: pido el tamaņo, la probabilidad y llamo al procedimiento de los numeros aleatorios para despues poder dibujar el tablero. En la opcion 2: pido primero el modo de ejecucion, en pasos o en un paso solo, luego pido el tamaņo, la probabilidad con el aleatorio y luego lo dibujo, para despues hacer las siguientes generaciones y que me dibuje los siguientes tableros, para ello he usado tres variables de tipo tp_tablero, una es el primer tablero que dibuja, el cual lo copio en otra matriz, luego llamo al procediento generacion con un tablero vacio y el que he copiado, luego copio el nuevo tablero en el tablero de copia y vuelvo a llamar al procedimiento, asi hasta que se acaba el numero de turnos que ha elegido el usuario. En la opcion 3: llamo a la funcion de cargar mundo, con el fichero mundo, para dibujar en una matriz lo que contiene el fichero. (no funciona bien). En la opcion 4: simplemente salgo del programa. ---------------------------- (aņadido tras someter) ---------------------------- 18:00:11 11/12/09 -> Segun los datos introducidos los ficheros son: G03P01D2 -> Los autores del trabajo son: Bel Fraguas, Maria Nombres originales de los archivos entregados -> G03P01.PAS, G03P01.txt