Tải bản đầy đủ (.pdf) (23 trang)

Báo cáo dự án xây dựng câu đố SUDOKU

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (396.9 KB, 23 trang )

TRƯỜNG ĐẠI HỌC TÔN ĐỨC THẮNG
KHOA CÔNG NGHỆ THÔNG TIN

BÁO CÁO DỰ ÁN GIỮA KÌ
TỐN TỔ HỢP VÀ ĐỒ THỊ

Xây dựng Câu đố SUDOKU

THÀNH PHỐ HỒ CHÍ MINH

i


LỜI CẢM ƠN
Qua đây em xin được gửi lời cảm ơn thầy đã tận tình giúp đỡ, hướng dẫn em
hồn thành dự án này. Tuy nhiên do trình độ và kiến thức cịn hạn hẹp nên trong
chương trình khơng tránh khỏi những thiếu sót, em rất mong nhận được những góp ý
và bổ sung của các thầy và các bạn để đề tài của em được hoàn thiện.

ii


ĐỒ ÁN ĐƯỢC HỒN THÀNH
TẠI TRƯỜNG ĐẠI HỌC TƠN ĐỨC THẮNG
Tôi xin cam đoan đây là sản phẩm đồ án của riêng chúng tôi và được sự hướng
dẫn của GV. Nguyễn Chí Thiện. Các nội dung nghiên cứu, kết quả trong đề tài này là
trung thực và chưa công bố dưới bất kỳ hình thức nào trước đây. Những số liệu trong
các bảng biểu phục vụ cho việc phân tích, nhận xét, đánh giá được chính tác giả thu
thập từ các nguồn khác nhau có ghi rõ trong phần tài liệu tham khảo.
Ngồi ra, trong đồ án cịn sử dụng một số nhận xét, đánh giá cũng như số liệu
của các tác giả khác, cơ quan tổ chức khác đều có trích dẫn và chú thích nguồn gốc.


Nếu phát hiện có bất kỳ sự gian lận nào tơi xin hồn tồn chịu trách nhiệm
về nội dung đồ án của mình. Trường đại học Tôn Đức Thắng không liên quan đến
những vi phạm tác quyền, bản quyền do tôi gây ra trong q trình thực hiện (nếu có).
TP. Hồ Chí Minh, ngày tháng năm
Tác giả
(ký tên và ghi rõ họ tên)

Nguyễn Quốc Thái

Lưu Quang Thắng

iii


PHẦN XÁC NHẬN VÀ ĐÁNH GIÁ CỦA GIẢNG VIÊN
Phần xác nhận của GV hướng dẫn

_________________________________________________________
_________________________________________________________
_________________________________________________________
_________________________________________________________
_________________________________________________________
_________________________________________________________
_________________________________________________________
Tp. Hồ Chí Minh, ngày tháng năm
(kí và ghi họ tên)

Phần đánh giá của GV chấm bài

_________________________________________________________

_________________________________________________________
_________________________________________________________
_________________________________________________________
_________________________________________________________
_________________________________________________________
_________________________________________________________
Tp. Hồ Chí Minh, ngày tháng năm
(kí và ghi họ tên)

iv


TÓM TẮT
Xây dựng câu đố Sudoku sử dụng Latin Squares

v


MỤC LỤC
LỜI CẢM ƠN ..................................................................................................................ii
PHẦN XÁC NHẬN VÀ ĐÁNH GIÁ CỦA GIẢNG VIÊN ..........................................iv
TÓM TẮT ........................................................................................................................ v
MỤC LỤC .......................................................................................................................vi
DANH MỤC CÁC BẢNG BIỂU, HÌNH VẼ, ĐỒ THỊ .............................................. viii
CHƯƠNG 1 – MƠ TẢ BÀI TỐN................................................................................. 1
CHƯƠNG 2 – CÁC BƯỚC GIẢI BÀI TOÁN ............................................................... 2
CHƯƠNG 3 – CODE....................................................................................................... 2
CHƯƠNG 4 – 5 TEST CASE .......................................................................................... 2
CHƯƠNG 5 – BẢNG ĐÁNH GIÁ ................................................................................. 2
TÀI LIỆU THAM KHẢO .............................................................................................. 15


vi


DANH MỤC KÍ HIỆU VÀ CHỮ VIẾT TẮT

vii


DANH MỤC CÁC BẢNG BIỂU, HÌNH VẼ, ĐỒ THỊ
DANH MỤC HÌNH
No table of figures entries found.

viii


CHƯƠNG 1 – MƠ TẢ BÀI TỐN
Sudoku là bảng câu đó hình vng, mỗi chiều có 9 ơ nhỏ, hợp thành 9 cột, 9 hàng và
được chia thành 9 ô lớn 3x3. Một vài ơ nhỏ được đánh số, đó là manh mối để tìm lời
giải. Tùy theo mức độ nhiều hay ít của manh mối, các câu đố được xếp theo loại dễ,
trung bình, khó
Mục tiêu của Câu đố Sudoku là điền các chữ số vào một lưới 9×9 sao cho mỗi cột, mỗi
hàng, và mỗi phần trong số chín lưới con 3×3 cấu tạo nên lưới chính (cũng gọi là
"hộp", "khối", hoặc "vùng") đều chứa tất cả các chữ số từ 1 tới 9. Câu đố đã được hoàn
thành một phần, người chơi phải giải tiếp bằng việc điền số sao cho:
+ Các số cùng 1 dịng khơng được trùng
+ Các số cùng 1 cột không được trùng
+ Các số trong cùng 1 ô 3x3 không được trùng
+ Thứ tự điền số là không quan trọng


1


CHƯƠNG 2 – CÁC BƯỚC GIẢI BÀI TOÁN
Bước 1: Tạo ra 1 Latin Squares 3x3 gồm 3 số 0, 1 và 2
Một hình vng Latin là một mảng n × n sao cho các số xuất hiện trong một
hàng không được trùng nhau và các số xuất hiện trong 1 cột không được trùng nhau
Latin Squares 3x3 sau khi tạo

Bước 2: Tạo ra thêm Latin Squares 3x3 gồm 3 số 0, 1 và 2 ứng với
mỗi một số trong Latin Squares vừa tạo ở bước 1
Các Latin Squares 3x3 vừa tạo ở bước này không được trùng nhau

Bước 3: Chuyển các số từ hệ 3 sang hệ 10
Coi các số 0,1,2 là các số hệ 3 và sẽ chuyển nó sang hệ 10
Xét trong 1 ô Latin Squares 3x3 chúng ta sẽ chuyển nó sang hệ 10 như sau

2


Mỗi ô của Latin Squares tạo ở bước 2 sẽ được gán với số tương ứng của ô Latin
Squares vừa tạo ở bước thứ 1
Công thức: Số được gán vào ô Latin Squares x 3 + số đang xét + 1
Dịng thứ 1:
2×3+0+1=7
2×3+2+1=9
2×3+1+1=8
Dịng thứ 2:
2×3+1+1=8
2×3+0+1=7

2×3+2+1=9
Dịng thứ 3:
2×3+2+1=9
2×3+1+1=8
2×3+0+1=7

3


Cuối cùng chúng ta có kết quả như sau:

Bước 4: Chuyển các dòng với nhau để các số trong cùng 1 ô 3x3
không bị trùng
Sau khi làm xong 3 bước trên chúng ta sẽ có 1 bảng như sau:

Chuyển dịng 2 và dòng 4 cho nhau
Chuyển dòng 3 và dòng 7 cho nhau
Chuyển dòng 6 và dòng 8 cho nhau

4


Chúng ta sẽ được:

Bước 5: Đục lỗ
Số lỗ sẽ do người chơi đưa ra
Số lỗ phải là bội của 9 và được chia đều cho các ơ 3x3
Ví dụ:
Người chơi cho số lỗ là 54 lỗ
Có 9 ơ 3x3 thì số lỗ của mỗi ô là 6


5


6


CHƯƠNG 3 – CODE
Bước 1: Tạo ra 1 Latin Squares 3x3 gồm 3 số 0, 1 và 2

Bước 2: Tạo ra thêm Latin Squares 3x3 gồm 3 số 0, 1 và 2 ứng với
mỗi một số trong Latin Squares vừa tạo ở bước 1

Bước 3: Chuyển các số từ hệ 3 sang hệ 10

7


Bước 4: Chuyển các dòng với nhau để các số trong cùng 1 ô 3x3
không bị trùng

Bước 5: Đục lỗ

8


9


CHƯƠNG 4 – 5 TEST CASE

Test case 1

Test case 2

10


Test case 3

Test case 4

Test case 5

11


CHƯƠNG 5 – BẢNG ĐÁNH GIÁ
1.

Nội dung
tiêu chí
1/ Hình
thức

Thang
đánh
giá
Điểm
/10


1

2

3

0 điểm

1/2 tổng
điểm

Trọn điểm

Có báo
cáo,
nhưng
cịn
chưa rõ
ràng,
thiếu
các mục
cơ bản

Rõ ràng, logic
(0.5đ), chứa đầy đủ
các nội dung bao
gồm phát biểu bài
tốn (0.5đ), mơ tả
các bước giải bài
toán (0.5đ), code

(0.5đ), 5 test case
(0.5đ), bảng sinh
viên tự đánh giá
(0.5đ)
Xuất nhập theo định
dạng

4.0
Thiếu bài báo
cáo

Bài báo
cáo ngắn
nội dung
bài tiểu
luận
(docx).

Xuất nhập
đúng định
dạng yêu
cầu.
2/ Nội
dung

Tự
đánh
giá

3.0


1.0

Xuất nhập
không theo định
dạng

6.0

12

3.0

1.0

Lý do


Nội dung
tiêu chí
Tạo được
tất cả các
ơ Latin
Squares.
Thực hiện
được phần
Digging
hole

Code


Thang
đánh
giá

2.0

1.0

1.0

1
Khơng tạo được
tất cả các ô
Latin Squares
đánh giá bằng
cách xuất ra
được kết quả
Không thực
hiện được phần
Digging hole
đánh giá bằng
cách xuất ra
được kết quả
Code không rõ
ràng, thiết kế
không theo một
programming
paradigm nhất
quán


Không trả lời
được câu hỏi
Vấn đáp

3/ Thái
độ người
học
Nộp bài
đúng hạn,
chủ động
trong việc
hoàn
thành tiểu
luận

2

2.0

3
Tạo được tất cả các
ô Latin Squares
đánh giá bằng cách
xuất ra được kết quả

Trả lời
được
một số
các câu

hỏi

Tự
đánh
giá
2.0

Thực hiện được
phần Digging hole
đánh giá bằng cách
xuất ra được kết quả

1.0

Theo một
programming
paradigm nhất quán.
Đầy đủ, rõ ràng, bao
gồm các phần cơ
bản như chức năng
của hàm, mô tả đầu
vào, đầu ra của mỗi
hàm (kiểu dữ liệu,
dùng để lưu trữ gì)
Trả lời được tất cả
các câu hỏi

0.0

Nộp đúng hạn (0 đ)


0

2.0

0.0
Nộp muộn (-1đ)
0.0

13

Lý do

Phần này
mặc định
là 2.0 cho
đến khi
vấn đáp
với
thầy(nếu
có)


Nội dung
tiêu chí
Tổng
điểm

Thang
đánh

giá

1

2

10

14

Tự
3
đánh
giá
Kết quả: 9.0

Lý do


Tài liệu tham khảo

15



×