Шахматная доска (консоль). C++
Пытаюсь нарисовать шахматную доску в консоли с помощью цикла, но есть одна проблема, клеточки рисуются в столбик, помогите, пожалуйста, решить проблему, вот код:
cout << "Доска: " << endl;
for (int pos = 0; pos < 64; pos++)
{
if (pos % 2 == 0)
{
for (int i = 0; i < 5; i++)
{
for (int j = 0; j < 5; j++)
{
cout << "*";
}
cout << endl;
}
}
else
{
for (int i = 0; i < 5; i++)
{
for (int j = 0; j < 5; j++)
{
cout << " ";
}
cout << endl;
}
}
}
Ответы (1 шт):
Автор решения: MBo
→ Ссылка
Ну а как же, если после каждых пяти символов в коде происходит переход на следующую строку?
Раз Вам нужно поле 8x8 с клетками в 5 символов, печатайте 40 строк, в каждой по 40 символов, а конкретный символ определяется позицией line/5 и column/5 - чётностью их суммы (или ксора)
for (int line = 0; line < 40; line++) {
for (int column = 0; column < 40; column++) {
if ((line/5+column/5)&1)
std::cout << "*";
else
std::cout << " ";
}
cout << endl;
}