Giáo án điện tử chuyên đề Khoa học máy tính 11 kết nối Bài 15: Bài toán xếp Hậu
Tải giáo án điện tử Chuyên đề học tập Tin học 11 - Khoa học máy tính (kết nối tri thức) Bài 15: Bài toán xếp Hậu. Bộ giáo án chuyên đề được thiết kế sinh động, đẹp mắt. Thao tác tải về đơn giản, dễ dàng sử dụng và chỉnh sửa. Thầy, cô kéo xuống để xem chi tiết.
Xem: => Giáo án tin học 11 theo định hướng khoa học máy tính kết nối tri thức
Click vào ảnh dưới đây để xem 1 phần giáo án rõ nét












Xem toàn bộ: Giáo án điện tử chuyên đề Tin học 11 - Khoa học máy tính Kết nối tri thức
CHÀO MỪNG CÁC EM ĐẾN VỚI BUỔI HỌC NGÀY HÔM NAY!
KHỞI ĐỘNG
Trên bàn cờ vua chúng ta đều biết Hậu là quân cờ mạnh nhất vì nó có thể di chuyển theo tất cả các hướng ngang, dọc và chéo. Một bài toán vui rất nổi tiếng là tìm cách sắp xếp 8 quân Hậu trên bàn cờ sao cho không quân Hậu nào khống chế con nào. Em hãy thử tìm một cách xếp quân Hậu khác với cách xếp như hình sau:
Bài toán tìm tất cả các cách xếp 8 quân Hậu trên bàn cờ vua sao cho các quân Hậu không khống chế lẫn nhau được gọi là bài toán xếp Hậu (n-Queen Problem). Bài toán này được nhà bác học Đức Carl Friedrich Gauss nghiên cứu từ những năm 1850. Bài toán đã được mở rộng trên bàn cờ kích thước bất kì và vẫn đang được tiếp tục phát triển cho đến ngày nay.
BÀI 15
BÀI TOÁN XẾP HẬU
NỘI DUNG BÀI HỌC
Mô tả bài toán xếp Hậu trên bàn cờ vua
01
Thiết lập lời giải bài toán xếp Hậu tổng quát
02
01
MÔ TẢ BÀI TOÁN XẾP HẬU
TRÊN BÀN CỜ VUA
Hoạt động 1
Tìm hiểu mô hình bài toán xếp Hậu trên bàn cờ vua tổng quát
Đọc, quan sát, trao đổi và thảo luận về bài toán xếp Hậu tổng quát và cách tiếp cận quay lui để giải bài toán.
Sử dụng một mảng để lưu vị trí của các quân hậu đã đặt.
Kiểm tra quân hậu mới được thêm vào có bị trùng với quân cũ không
Kiểm tra hàng, cột, đường chéo.
Quá trình chạy quay lui
Quân hậu mới đó không thể đặt được ở vị trí đó.
IF
Đặt lại quân hậu trước đó tại một vị trí khác
Thử lại cho đến khi tìm được vị trí thích hợp
Duyệt qua tất cả các trường hợp có thể có và đưa ra được kết quả đúng của bài toán
- Điều kiện xếp được quân Hậu tiếp theo tại cột k sau khi đã xếp xong tại các cột bên trái.
- Mệnh đề mô tả điều kiện của quân cờ tại cột k chính là điều kiện tính S_k của sơ đồ thuật toán quay lui tổng quát đã học trong bài 13.
Ý tưởng tiếp cận duyệt quay lui giải bài toán xếp Hậu tổng quát là tìm kiếm trên tất cả các dãy dạng A[0] , A[1], …, A[n-1], trong đó A[k] là chỉ số hàng của quân Hậu tại cột thứ k.
KẾT LUẬN
Đọc thông tin và trả lời các câu hỏi sau đây:
Câu 1: Giả sử n = 4, A[0] = 2, A[1] = 0. Hãy tìm A[2].
Hướng dẫn trả lời:
Với n = 4 A[0] = 2 A[1] = 0 thì A[2] = 3 (chỉ có 1 giá trị duy nhất).
Đọc thông tin và trả lời các câu hỏi sau đây:
Câu 2: Nếu n = 5, A[0] = 0, A[1] = 3. Tìm các khả năng của A[2].
Hướng dẫn trả lời:
Với n = 5 A[0] = 0 A[1] = 3 thì A[2] = 1 (chỉ có 1 giá trị duy nhất).
02
THIẾT LẬP LỜI GIẢI BÀI TOÁN XẾP HẬU TỔNG QUÁT
Hoạt động 2
Tìm hiểu thuật toán và cách giải bài toán xếp Hậu trên bàn cờ vua
Đọc, quan sát, trao đổi và thảo luận về thuật toán và thiết lập chương trình hoàn chỉnh giải bài toán.
- Số tự nhiên n được cố định trước, tập các nghiệm sẽ được tìm từ các dãy độ dài n như sau:
- Mảng A được thiết lập trước có n phần tử và bao gồm các số 0.
- Thuật toán chính là trynext(k) sẽ tìm ra vị trí đầu tiên để gán cho A[k] tại thời điểm coi như đã biết vị trí k – 1 quân Hậu trước đó tại A[0], A[1],..., A[k-1].
- Chương trình tổng quát:
1 def showQueen(A): 2 n = len(A) 3 for i in range(n): 4 for j in range(n): 5 if A[j] == i: 6 print(1,end = “”) 7 else: 9 print(0, end = “”) 10 print() 11 def check(A,i,j): 12 for k in range(j): 13 if A[k] == i: 14 Return False 15 if abs(A[k] – i) == abs(j – k): 16 return False 17 return True |
9 print(0, end = “”) 10 print() 11 def check(A,i,j): 12 for k in range(j): 13 if A[k] == i: 14 Return False 15 if abs(A[k] – i) == abs(j – k): 16 return False 17 return True 18 19 def trynext(k): 20 global ncount |
21 if k == n: 22 ncount = ncount + 1 23 print(“Phương án”, count, “:”) 24 showQueen(A) 25 else: 26 for i in range(n): 27 if check(A,i,k): 28 A[k] = i 29 trynext(k + 1) |
Giải thích
- Dòng 3 sẽ thông báo nghiệm nếu k = n, tức là đã tìm được đủ n vị trí A[0], A[1], ..., A[n - 1].
- Hàm showQueen(A) sẽ thể hiện trên màn hình phương án sắp xếp các quân Hậu theo bộ dữ liệu của A.
- Các hàng sẽ đánh chỉ số từ trên xuống, các cột đánh chỉ số từ trái sang.
Giải thích
--------------- Còn tiếp ---------------
Trên chỉ là 1 phần của giáo án. Giáo án khi tải về có đầy đủ nội dung của bài. Đủ nội dung của học kì I + học kì II
Hệ thống có đủ tài liệu:
- Giáo án điện tử chuyên đề Tin học 11 - Khoa học máy tính Kết nối tri thức (350k)
- Giáo án tin học 11 theo định hướng khoa học máy tính kết nối tri thức (300k)
- Giáo án powerpoint Tin học 11 Định hướng khoa học máy tính kết nối tri thức (350k)
- Câu hỏi và bài tập trắc nghiệm khoa học máy tính 11 kết nối tri thức (150k)
- Đề thi tin học 11 định hướng khoa học máy tính kết nối tri thức (200k)
- File word đáp án tin học khoa học máy tính 11 kết nối tri thức (100k)
- Kiến thức trọng tâm tin học 11 theo định hướng khoa học máy tính kết nối tri thức (150k)
- Câu hỏi tự luận Tin học khoa học máy tính 11 kết nối tri thức (150k)
- Giáo án powerpoint chuyên đề Tin học 11 Định hướng Khoa học máy tính kết nối tri thức (350k)
- Phiếu học tập theo bài Khoa học máy tính 11 kết nối tri thức cả năm (150k)
- Trắc nghiệm đúng sai Tin học 11 Khoa học máy tính Kết nối tri thức cả năm (150k)
- Trắc nghiệm dạng câu trả lời ngắn Tin học 11 Khoa học máy tính Kết nối tri thức cả năm (150k)
=> Có thể chọn nâng cấp VIP với phí là 1050k để tải tất cả tài liệu ở trên
- Chỉ gửi 500k. Tải về dùng thực tế, 1 ngày sau mới gửi số còn lại.
Cách tải hoặc nâng cấp:
- Bước 1: Chuyển phí vào STK: 1214136868686 - cty Fidutech - MB
- Bước 2: Nhắn tin tới Zalo Fidutech - nhấn vào đây để thông báo và nhận tài liệu
Xem toàn bộ: Giáo án điện tử chuyên đề Tin học 11 - Khoa học máy tính Kết nối tri thức
ĐẦY ĐỦ GIÁO ÁN CÁC BỘ SÁCH KHÁC
GIÁO ÁN WORD LỚP 11 KẾT NỐI TRI THỨC
GIÁO ÁN POWERPOINT LỚP 11 KẾT NỐI TRI THỨC
GIÁO ÁN CHUYÊN ĐỀ LỚP 11 KẾT NỐI TRI THỨC
GIÁO ÁN DẠY THÊM 11 KẾT NỐI TRI THỨC
CÁCH ĐẶT MUA:
Liên hệ Zalo: Fidutech - nhấn vào đây