Nội dung
- shares
- Facebook Messenger
- Gmail
- Viber
- Skype
Trò chơi sudoku là một game giải trí nhìn nhanh với những con số được xắp xếp dạng ma trận. Người chơi điền vào ô trống sao cho không trùng với bất kỳ con số nào ở hàng dọc và hàng ngang.
Dựa vào nguyên lý đó, mình xây dựng game sudoku đơn giản bằng code PHP và javascript.
Xem Demo.
Download Code.
Giải thích API
Quy ước
:
Phần tử được đặt trên ma trận N x N.
Phần tử ở vị trí dòng $i
& cột $j
thì ký hiệu: ($i, $j)
.
Vị trí được tính bắt đầu tử 0.
[FALSE]: xẩy ra trong trường hợp thêm phần tử nhưng không hợp lệ theo luật của trò chơi.
[DONE]: xẩy ra khi các phần tử trong bàn sudoku đã lấp đầy.
Toàn bộ trương trình sử dụng 1 file để chạy (index.php).
Sử dụng các tham số Querystring với phương thức GET sau đây:
do |
|
matrix |
Chuỗi mảng ma trận được mã hóa: ma trận khuyết thiếu ban đầu & trong quá trình chơi game. |
i |
Chỉ định dòng i của phần tử: vị trí phần tử muốn thiết lập or cần gợi ý. |
j |
Chỉ định cột j của phần tử: vị trí phần tử muốn thiết lập or cần gợi ý. |
a |
Giá trị của phần tử muốn thiết lập. |
size |
Kích thước sudoku. |
matrix_origin |
Ma trận gốc. |
Thành phần HTML Elements
id="matrix_string" |
Hứng kết quả chuỗi ma trận mới trong quá trính chơi game. Nếu thiết lập phần tử thành công thì thêm phần tử đó, ngược lại thì xóa phần tử đó. Thiết lập chuỗi ma trận mới vào đối tượng này. Note: nếu phần tử thiết lập không hợp lệ thì có thêm chuỗi [FALSE]. |
id="sudoku" |
Bảng chứa bàn sudoku. |
name="auto_check" |
Hộp kiểm cho phép game có kiểm tra phần tử ngay sau khi player nhập hay không? |
name="size" |
Thay đổi kích thước sudoku. |
type="reset" |
Nút nạp lại thiết lập. |
|
Global variables
PHP | |
$size |
Kích thước ma trận vuông sudoku. |
Javascript | |
__item |
Mảng 2 phần tử: Phần tử 1: chuỗi xác định vị trí phần tử sẽ gợi ý.ie: 2-1 Phần tử 2: đối tượng < input > của phần tử. |
_enabled_valid=false |
Bật tắt tính năng kiểm tra ngay. |
Danh sách hàm
Một số hàm khác: cross_array, get_rand_item, pick_rand_number, shift,… tham khảo hphp.php.docx .
Hãy cho mình biết suy nghĩ của bạn trong phần bình luận bên dưới bài viết này. Hãy theo dõi kênh chia sẻ kiến thức WordPress của Hoangweb trên Twitter và Facebook
- shares
- Facebook Messenger
- Gmail
- Viber
- Skype