Skip to content

Commit

Permalink
Sudoku completamente terminado
Browse files Browse the repository at this point in the history
  • Loading branch information
UO291047 committed Nov 19, 2023
1 parent 641b82f commit db636dd
Show file tree
Hide file tree
Showing 2 changed files with 31 additions and 4 deletions.
19 changes: 15 additions & 4 deletions js/sudoku.js
Original file line number Diff line number Diff line change
Expand Up @@ -81,12 +81,25 @@ class Sudoku{

// Llama al método introduceNumber con el número obtenido
this.introduceNumber(number);
}else if (keyCode === 8) {
// Si la tecla pulsada es Backspace, llama al método introduceNumber con el valor 0
this.introduceNumber(0);
}
}

introduceNumber(number) {

const { row, column } = this.selectedCell;

const selectedCellElement = document.querySelector(`[data-row='${row}'][data-column='${column}']`);

if(number === 0){
this.tablero[row][column] = number;
selectedCellElement.dataset.state = 'clicked';
selectedCellElement.textContent = "";
return;
}

// Comprobar si el número es válido en la fila
const isNumberValidInRow = !this.tablero[row].includes(number);

Expand All @@ -100,17 +113,15 @@ class Sudoku{

// Si el número es válido, realizar acciones necesarias
if (isNumberValidInRow && isNumberValidInColumn && isNumberValidInSubgrid) {
// Obtener el elemento del DOM correspondiente
const selectedCellElement = document.querySelector(`[data-row='${row}'][data-column='${column}']`);

// Modificar el valor del atributo data-state a correct
this.tablero[row][column] = number;
selectedCellElement.dataset.state = 'correct';
// También puedes modificar el contenido del párrafo para mostrar el número
selectedCellElement.textContent = number;

// Comprobar si ya están rellenas todas las cuadrículas del sudoku
if (this.isSudokuCompleted()) {
alert('¡Sudoku completado!');
return;
}
} else {
alert('Número no válido para la casilla seleccionada.');
Expand Down
16 changes: 16 additions & 0 deletions sudoku.css
Original file line number Diff line number Diff line change
Expand Up @@ -19,4 +19,20 @@ p {
box-sizing: border-box;
text-align: center;
border: 1px solid gray;
}

/* Estilo para las celdas en el borde derecho de cada bloque 3x3 */
p:nth-child(3n) {
border-right: 2px solid #333;
}

/* Estilos para las celdas en el borde inferior de cada bloque 3x3 */
p[data-row="2"],
p[data-row="5"],
p[data-row="8"]{
border-bottom: 2px solid #333;
}

p[data-state="blocked"] {
background-color: #d6d8c0;
}

0 comments on commit db636dd

Please sign in to comment.