Skip to content

Commit 1ff477a

Browse files
Update script.js
1 parent 62880c3 commit 1ff477a

File tree

1 file changed

+28
-14
lines changed

1 file changed

+28
-14
lines changed

script.js

+28-14
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,40 @@
11
document.addEventListener('DOMContentLoaded', () => {
22
const grid = document.getElementById('sudokuGrid');
3-
for (let i = 0; i < 81; i++) {
4-
const cell = document.createElement('input');
5-
cell.setAttribute('type', 'number');
6-
cell.setAttribute('min', '1');
7-
cell.setAttribute('max', '9');
8-
cell.classList.add('cell');
9-
grid.appendChild(cell);
3+
4+
// Generate 9 sections (3x3 blocks)
5+
for (let section = 0; section < 9; section++) {
6+
const sectionDiv = document.createElement('div');
7+
sectionDiv.classList.add('section');
8+
9+
// Create 9 cells per section
10+
for (let i = 0; i < 9; i++) {
11+
const cell = document.createElement('input');
12+
cell.setAttribute('type', 'number');
13+
cell.setAttribute('min', '1');
14+
cell.setAttribute('max', '9');
15+
cell.classList.add('cell');
16+
sectionDiv.appendChild(cell);
17+
}
18+
grid.appendChild(sectionDiv);
1019
}
1120
});
1221

1322
function getPuzzle() {
1423
const cells = document.querySelectorAll('.cell');
1524
let puzzle = [];
16-
for (let i = 0; i < 9; i++) {
17-
let row = [];
18-
for (let j = 0; j < 9; j++) {
19-
const value = parseInt(cells[i * 9 + j].value) || 0;
20-
row.push(value);
25+
let row = [];
26+
27+
cells.forEach((cell, index) => {
28+
const value = parseInt(cell.value) || 0;
29+
row.push(value);
30+
31+
// Add row to puzzle every 9 cells
32+
if ((index + 1) % 9 === 0) {
33+
puzzle.push(row);
34+
row = [];
2135
}
22-
puzzle.push(row);
23-
}
36+
});
37+
2438
return puzzle;
2539
}
2640

0 commit comments

Comments
 (0)