EL JUEGO DE LA VIDA ------------------- Para la ejecución del codigo utilizamos 2 constantes que determinaran el tamaño de la matriz. Se define un tipo array bidimensional de tamaño 10 x 10. Se definen 2 variables del tipo array. En una almacenaremos el estado de las celulas y la usaremos para mostrar por pantalla el mundo en los distintos turnos del juego. La otra se usara como variable temporal (mundo_temp) para calcular el estado del siguiente mundo. Procedimientos: --------------- Menu: Nos muestra por pantalla 4 opciones y pide al usuario que teclee la que quiere ejecutar: 1 - Configurar: (Llama al procedimiento menu2 donde pide al usuario que asigne valores a las distintas variables que pueden modificar la ejecucion del programa. Dichas variables son: . x,y,z: se emplean para el calculo del estado inicial de la celula al pasa de turno. . turnos: numero de turnos que tendra el juego . modo: almacenara el modo de juego (1 para ver todos los pasos intermedios y 2 para ver el resultado inicial y final de los mundos. Menu2: anteriormente explicado Dibujar_mundo: Para implementar este procedimiento se pasan las variables fila, columna y mundo. Declaramos 3 variables de tipo entero locales al procedimiento que usara para recorrer los distintos valores de la matriz mundo. Si el valor al que accedemos tiene almacenado un 0, el procedimiento escribira en pantalla '-'. Si tiene 1 pondra 'x'. Calcular_mundo_siguiente: Para este procedimiento pasamos por valor las variables x,y,z (necesarias para el calculo del estado inicial de las celulas en el siguiente turno), f,c(tamaño de la matriz en filas y columnas). Estas variables permaneceran inalterables durante la ejecucion del procedimiento. Tambien pasamos por referencia la variable mundo, la cual si modificaremos y devolveremos con los valores que adquiera en el siguiente turno. Para calcular que valores tendremos, implementamos una variable temporal del mismo tipo que mundo, donde guardaremos los cambios, con el fin de no modificar la matriz mundo hasta que la hayamos recorrido por completo. Para recorrerla usamos 2 estructuras 'for', una dentro de otra que ira pasndo por todos los valores de las filas y columnas. A su paso por cada valor, analizaremos las casillas que la rodean, aumentando en 1 un contador con el fin de conocer una vez analizadas el numero de celulas vivas que tiene a su alrededor y asi poder dterminar el estado que tendra en el siguiente turno. Una vez recorridas las casillas de la matriz mundo y almacenado el resultado en mundo_temp, volcaremos con otros 2 'for' los valores del temporal al original, el cual devolveremos al codigo principal del programa, donde volveremos a llamar al procedimiento dibujar_mundo para su representacion por pantalla. La ejecucion del programa finalizara cuando el resultado de la seleccion menu sea igual a 4. Esto se controlara mediante un while que engloba la parte de codigo principal. ---------------------------- (añadido tras someter) ---------------------------- 20:37:59 11/12/09 -> Segun los datos introducidos los ficheros son: G15P04D2 -> Los autores del trabajo son: Boudlal Daimoussi, Yousra Nombres originales de los archivos entregados -> juego_vi.pas, Explicacion_Juego_vida.txt