Viết chương trình khai báo một mảng hai chiều 8x8 biểu diễn trạng thái của một bàn cờ vua
Câu 18.8 trang 65 SBT Tin học 11: Viết chương trình khai báo một mảng hai chiều 8x8 biểu diễn trạng thái của một bàn cờ vua. Giá trị một ô bàn cờ là 0 nếu không có quân cờ. Bên quân trắng sử dụng giá trị 1 đến 6 lần lượt cho các quân vua, hậu, xe, mã, tượng, tốt của bên trắng. Tương tự quân đen sử dụng giá trị -1 đến -6. Các cột bàn cờ được kí hiệu bằng các kí tự A, B, C, D, E, F, G, H trong khi đó các dòng được kí hiệu bằng số 1 đến 8 từ dưới lên.
Giả sử quân trắng chuẩn bị đi, hãy in ra vị trí các quân xe trắng cùng các ô nó có thể được đi ở nước tiếp theo.
Gợi ý: Đầu tiên cần tìm vị trí các quân xe trắng bằng cách dùng hai vòng lặp duyệt qua tất cả các hàng và cột của mảng hai chiều tìm các ô có giá trị là 3 (ứng với quân xe trắng). Vì con xe có thể đi dọc và ngang nên để tìm các ô nó có thể đi chỉ cần duyệt từ vị trí mỗi con xe theo 4 hướng trên, dưới, trái, phải cho đến khi gặp một quân cờ khác hoặc đến biên bàn cờ.