#include <iostream>
#include <vector>
using namespace std;
// 定义棋盘大小
const int BOARD_SIZE = 8;
// 定义棋子类型
enum class PieceType {
Empty,
Pawn,
Rook,
Knight,
Bishop,
Queen,
King
};
// 定义棋子结构体
struct Piece {
PieceType type;
bool isBlack;
};
// 定义棋盘
vector<vector<Piece>> board(BOARD_SIZE, vector<Piece>(BOARD_SIZE));
// 初始化棋盘
void initBoard() {
// 初始化黑方棋子
board[0][0] = {PieceType::Rook, true};
board[0][1] = {PieceType::Knight, true};
board[0][2] = {PieceType::Bishop, true};
// ... 其他黑方棋子的初始化
// 初始化白方棋子
board[7][0] = {PieceType::Rook, false};
board[7][1] = {PieceType::Knight, false};
board[7][2] = {PieceType::Bishop, false};
// ... 其他白方棋子的初始化
// 初始化空白位置
for (int i = 2; i < 6; i++) {
for (int j = 0; j < BOARD_SIZE; j++) {
board[i][j] = {PieceType::Empty, false};
}
}
}
// 打印棋盘
void printBoard() {
for (int i = 0; i < BOARD_SIZE; i++) {
for (int j = 0; j < BOARD_SIZE; j++) {
switch (board[i][j].type) {
case PieceType::Empty:
cout << ".";
break;
case PieceType::Pawn:
cout << "P";
break;
case PieceType::Rook:
cout << "R";
break;
case PieceType::Knight:
cout << "N";
break;
case PieceType::Bishop:
cout << "B";
break;
case PieceType::Queen:
cout << "Q";
break;
case PieceType::King:
cout << "K";
break;
}
}
cout << endl;
}
}
int main() {
// 初始化棋盘
initBoard();
// 打印初始棋盘
printBoard();
return 0;
}
程序员的一天
最新推荐文章于 2024-10-12 09:09:57 发布