Я пытаюсь создать базовую шахматную доску на C ++ и вывести ее.
Я установил массив многомерных игровых досок в качестве начального теста и вставил символы для представления каждой фигуры.Этот вывод дает странные результаты, поэтому я сократил код до следующего, который предназначен для создания доски с двумя рядами пешек и ладьи в каждом углу, обозначенных a, b, c и d.
#include <string>
using namespace std;
class Game
{
public:
int turn;
char player;
char board[7][7];
Game()
{
turn = 1;
player = 'w';
int x,y;
for(y=0;y<=7;y++) for(x=0;x<=7;x++) board[x][y] = '.';
board[0][0] = 'a';
board[7][0] = 'b';
board[0][7] = 'c';
board[7][7] = 'd';
for(x=0;x<=7;x++) board[x][1] = 'p';
for(x=0;x<=7;x++) board[x][6] = 'p';
}
string getBoard()
{
string result = "";
int x,y;
for(y=0;y<=7;y++)
{
for(x=0;x<=7;x++) result += board[x][y];
result += "\n";
}
return result;
}
};
Я использую следующее для проверки:
Game game;
cout << game.getBoard();
и получаю следующий результат:
ac.....b
pppppppp
........
........
........
........
pppppppp
c.....bd
Любые идеи, почему грачи дублируются, а не просто появляются в углах?Я не могу отследить проблему.