Fix typos

This commit is contained in:
2026-04-12 12:12:41 +02:00
parent ffd2d58ac4
commit e5700ddc95
2 changed files with 24 additions and 16 deletions

8
.codebook.toml Normal file
View File

@@ -0,0 +1,8 @@
words = [
"jali",
"listf",
"luser",
"mlftp",
"pdp",
"turist",
]

View File

@@ -5,7 +5,7 @@
[Sudoku](https://en.wikipedia.org/wiki/Sudoku) is a logic based number-placement
puzzle game originally from Japan. The word *sudoku* literally means
*digit-single*. The objective is to fill a 9x9 grid with numbers between 1 and
9, without having a number repeat in a row, column or a 3x3 subgrid. Normally,
9, without having a number repeat in a row, column or a 3x3 sub grid. Normally,
there are a few numbers preset. In a regular sudoku, the pre-filled numbers make
sure, that exactly one solution for the puzzle exists.
@@ -48,17 +48,17 @@ The rules are the following:
once.
- Every 3x3 sub-grid must contain every number between 1 and 9 exactly once.
## Solving Sudokus programatically
## Solving Sudokus algorithmically
### Backtracking (naïve approach)
Solving a Sudoku can be achieved in serveral ways. The most simple algorithm, is
Solving a Sudoku can be achieved in several ways. The most simple algorithm, is
a backtracking algorithm. With this a sudoku can be resolved basically by
brute-forcing it. In this case, we walk through each cell of the grid
recurseivly, and add a number. Then we check, if the grid is still valid. If it
is, we recursivly move on to the next column. If we find a number that doesn't
recursively, and add a number. Then we check, if the grid is still valid. If it
is, we recursively move on to the next column. If we find a number that doesn't
match, we return to the previous incarnation, and try another number. In order
to check, if our grid is still valid, we can use simple function:
to check if our grid is still valid, we can use simple function:
```C
// Function to check, if it is save to place num at mat[row][col]
@@ -149,20 +149,20 @@ even without the front panel, but having the front panel is fancier. You can
also run [simh](https://opensimh.org/) on a PC, but that would only be half the
fun.
The PiDP-10 shold be booted into ITS, as this is the OS, this project is running
against. Now the only thing you need to do, is copy the source code files into
the file system of your PiDP-10. You can do this by using the `mlftp` tool,
installed on the machine your simulator runs on. You clone the repository and
run the following commands from the command line:
The PiDP-10 should be booted into ITS, as this is the OS, this project is
running against. Now the only thing you need to do, is copy the source code
files into the file system of your PiDP-10. You can do this by using the `mlftp`
tool, installed on the machine your simulator runs on. You clone the repository
and run the following commands from the command line:
```bash
/opt/pidp10/bin/mlftp -w ITS "SUDOKU 1 JALI;" ./src/sudoku.s
/opt/pidp10/bin/mlftp -w ITS "PUZZL1 SUDOKU JALI;" ./src/puzzle_1.sudoku
/opt/pidp10/bin/mlftp -w ITS "PUZZLE 1 JALI;" ./src/puzzle_1.sudoku
```
This will copy the source code file, and the example puzzle file onto the
PiDP-10. Remmber to change the directory name in the ITS path form `JALI` to the
directory you want to copy to.
PiDP-10. Remember to change the directory name in the ITS path form `JALI` to
the directory you want to copy to.
You can now edit both files in EMACS on the PiDP-10. However, if you prefer to
edit your code in a somewhat more modern environment (your favourite IDE, for
@@ -203,9 +203,9 @@ FREE BLOCKS #2=154 #3=169 #0=156 #1=171
To invoke the solver run it with:
```
:SUDOKU PUZZL1 SUDOKU
:SUDOKU PUZZLE 1
```
This will pass the file `PUZZL1 SUDOKU` to the program, and start to solve it.
This will pass the file `PUZZLE 1` to the program, and start solving it.
The result will be printed on the screen (once the project is finished).