Está en la página 1de 2

Juan Manuel Utrera García y José Escribano Cobalea

Variables de la clase:

- Buffer de punteros: En este buffer se almacenará el sudoku representado como una


matriz. Los elementos que contiene el buffer será de tipo casilla.

El tipo casilla será una estructura con los siguientes atributos:

o Valor: el número que se asigna a la casilla del sudoku


o Casillas-relacionadas: array de casillas con la que está relacionada la casilla
o Suma-relaciones: el valor que deben sumar la casilla actual y sus relacionadas

Métodos de la clase:

- Insertar_valor_a_casilla:
o Descripción: Método que servirá para poder insertar un valor en una casilla
que especifiquemos.
o Argumento: Valor a insertar, fila y columna de la casilla donde se quiere
insertar
o Precondición: Para poder insertar un valor se realizarán comprobaciones
usando los siguientes métodos.
▪ Comprobar_valor_casillas_misma_fila:
• Descripción: Comprobará que valores no podemos insertar en
la casilla porque ya se encuentran en su fila correspondiente.
• Argumento: Fila y columna de la casilla a comprobar, valor
que se desea insertar.
• Precondición: La fila y la columna insertada deben ser válidas
• Poscondicion: No se modifica la posición insertada como
argumento.
• Return: booleano que nos indica si se puede insertar el valor
elegido o no.
▪ Comprobar_valor_casillas_misma_columna:
• Descripción: Comprobará que valores no podemos insertar en
la casilla porque ya se encuentran en su columna
correspondiente.
• Argumento: Fila y columna de la casilla a comprobar, valor
que se desea insertar.
• Precondición: La fila y la columna insertada deben ser válidas
• Poscondicion: No se modifica la posición insertada como
argumento.
• Return: booleano que nos indica si se puede insertar el valor
elegido o no.
▪ Comprobar_valor _casillas_misma_cuadricula:
• Descripción: Se encargará de recorrer la cuadrícula a la que
pertenece la casilla que queremos rellenar para saber los
valores que ya se encuentran dentro de la cuadricula.
• Argumento: Fila y columna de la casilla a comprobar, valor
que se desea insertar.
• Precondición: La fila y la columna insertada deben ser válidas
• Poscondicion: No se modifica la posición insertada como
argumento.
• Return: booleano que nos indica si se puede insertar el valor
elegido o no.

▪ Comprobar_valor_casillas_relacionadas:
• Descripción: Se encargará de comprobar los valores de las
casillas con las que está relacionada para poder asignar un
valor que que permite obtener la suma-relaciones que se
requiere en esa relación de casillas.
• Argumento: Fila y columna de la casilla correspondiente, valor
que se desea insertar.
• Poscondicion: No se modifica la posición insertada como
argumento.
• Precondición: La fila y la columna insertada deben ser válidas
• Return: booleano que nos indica si se puede insertar el valor
elegido o no.

o Poscondición: Si se han cumplido las precondiciones, se modificará el valor de


la casilla introducida por el valor especificado.
o Return: Booleano que nos indica si se ha podido realizar la acción con éxito o
no
- Borrar_valor_de_casilla:
o Descripción: Consiste en borrar el valor de la casilla que le indiquemos en el
buffer.
o Arguemento: Fila y columna de la casilla a la que le queremos borrar el valor
o Precondición: La fila y la columna insertada deben ser válidas
o Poscondición: Se queda la casilla sin valor(NULL)
o Return: Booleano que nos indica si se ha podido realizar con éxito o no la
acción.
- Obtener_valor_de_casilla:
o Descripción: Nos permite obtener el valor de la casilla que solicitamos.
o Argumento: Fila y columna cuya casilla queremos obtener el valor
o Precondición: La fila y la columna insertada deben ser válidas
o Return: Devuelve el valor de la casilla que hemos solicitado
- Comprobar_casilla_existe:
o Descripción: Nos permite comprobar si la casilla cuya fila y columna hemos
introducido como argumento existe, es decir, la fila y la columna están en el
array.
o Argumento: Fila y columna de la casilla que queremos comprobar
o Poscondición: No se modifica la casilla
o Return: Booleano que nos indica si la fila y la columna insertada son valores
validos.

También podría gustarte