Você está na página 1de 3

José Algara 10033

Diego Enríquez 10038


José Miguel Fernández
Sección 20
Proyecto 1

ANÁLISIS
a) Entradas:
i. Opción para jugar
ii. Opción para escoger dificultad
iii. Opción para elegir nivel
iv. Opción para mover filas o columnas
v. Opción para mover a la izquierda o a la derecha
vi. Opción para mover hacia arriba o hacia abajo

b) Salidas:
i. Las matrices de cuadros
ii. Los cuadros
iii. Menú de dificultad
iv. Menú de nivel
v. Menú de jugar
vi. Menú para mover filas o columnas
vii. Menú para mover hacia los lados
viii. Menú para mover hacia arriba o hacia abajo
ix. Mensajes de error
x. Mensajes de felicitación

c) Condiciones
i. Que las opciones elegidas por el usuario sean válidas y en el
formato necesario
ii. Que en el menú de dificultad la opción no sea menor a 1, pero
tampoco mayor a 3
iii. Que en el menú de nivel la opción no sea menor a 1, pero
tampoco mayor a 3
iv. Que en el menú de jugar la opción no sea menor a 1, pero
tampoco mayor a 3
v. Que en el menú para mover filas o columnas la opción no sea
menor a 1, pero tampoco mayor a 2
vi. Que en el menú para mover hacia los lados la opción no sea
menor a 1, pero tampoco mayor a 2
vii. Que en el menú para mover hacia arriba o hacia abajo la
opción no sea menor a 1, pero tampoco mayor a 2
d) Repeticiones
i. Se utilizan repeticiones para mostrar los menús, estas se
controlan mediante la opción que se elija del menú
ii. Se utilizan para hacer (llenar) las matrices, estas se controlan
por la cantidad de veces que se repita l proceso (un contador)
iii. Se utilizan para hacer lo dibujos de las matrices, también esta
repetición es controlada por un contador
iv. Se utilizan para mover las filas/columnas, se controlan por un
contador.

e) Programa Principal
i. Algoritmo Narrativo
Mientras se desee volver a jugar
Se muestra un menú de dificultades
Se pide al usuario que elija la dificultad que quiera
Se muestra un menú de niveles
Se muestra la matriz inicial y la matriz de respuesta en
pantalla
Mientras la respuesta no sea igual a la matriz inicial,
entonces
Se pide al usuario que elija si desea mover una fila
o una columna
Se muestra la matriz inicial (con los cambios) y la
matriz de respuesta en pantalla
Fin mientras.
Se pregunta si se desea volver a jugar
Fin Mientras.

f) Clase Cuadro
i. Atributos

Identificado
Visibilidad Tipo Observaciones
r
private char color color del cuadro
private int posX posición en el eje x
private int posY posición en el eje y
ii. Métodos
Tipo de
Visibilidad Identificador Parámetros Funcionalidad
retorno
Inicializa el estado del
cuadro (predefinido)
public ------- Cuadro --------- color = "R"
posX = 0
posY = 0
char color Inicializa el estado del
public ------- Cuadro int posX cuadro, pero con
int posY parámetros
public void setColor char color Asignación del color
Asignación a la
public void setPosX Int posX
posición x
Asignación a la
public void setPosY Int posY
posición y
public char getColor -------- Retorna el color
public int getPosX -------- Retorna la posición x
public int getPosY -------- Retorna la posición y
Describe el estado de
public String toString ---------
los atributos

g) Clase Matriz
i. Atributos

Visibilidad Tipo Identificador Observaciones


private int filas filas de la matriz
private int columnas columnas de la matriz
private Cuadro [][] matriz Matriz principal
private char color_base color de la matriz

ii. Métodos
Tipo de
Visibilidad Identificador Parámetros Funcionalidad
retorno
Inicializa el estado de la matriz
(predefinido)
matriz = new Cuadro[][]
public ------- Matriz ---------
filas = matriz.length
columnas= matriz[0].length
color_base = 'V'
int filas Inicializa el estado de la matriz,
public ------- Matriz int columnas pero con parámetros
char color_base
public int getFilas -------- Retorna las filas de la matriz
Retorna las columnas de la
public int getColumnas --------
matriz
public char getColor_base -------- Retorna el color de la matriz
public String getMatriz -------- Retorna el dibujo de la matriz
int columna sirve para poder mover las
public void moverColumna
boolean dirección columnas (arriba, abajo)
int fila sirve para poder moverse las
public void moverFila
boolean dirección filas (derecha, izquierda)
sirve para comparar diferentes
public boolean compararMatrices Matriz matriz2
matrices
char color Coloca cierta cantidad de colores
public void matrizJuego
int cantidad en una matriz
public void hacerMatriz --------- sirve para crear una matriz
Describe el estado de los
public String toString ---------
atributos

Você também pode gostar