Изучение вложенных циклов C++ перепутано с примером

Здравствуйте, беру онлайн-класс по вложенным циклам, и это было приведено в качестве примера, но я не знаю, что происходит.

В следующем примере кода показано вложение циклов для вывода шахматного или шахматного представления с использованием символов X и O. Почему нам нужны переменные x и y для выполнения определенного количества раз. А что чередуется =! Alternate; имею в виду? Что касается х и у, разве он не будет делать это в 8 раз больше, потому что это больше, чем количество раз у? Какая разница в назначении для двух заявлений? Спасибо.

for (int x = 0; x < 8; x++)
{
   for (int y = 0; y < 4; y++)
     {
        if (alternate)
        {
        cout << "X ";
        cout << "O ";

    }
    else
    {
        cout << "O ";
        cout << "X ";

    }
}
alternate = !alternate;

cout << endl;
}

1 ответ

Переменная x используется для количества строк, которые вы хотите напечатать XO-парами. Переменная y используется для указания количества пар XO в 1 строке. Таким образом, для печати 8 строк пар XO и в каждой строке 4 пар XO, вы должны сделать именно так.

Оператор '!' используется для получения значения, противоположного значению (это логическое НЕ) (например, от 1 до 0 или от false до true). так чередовать =! чередовать; означает, что после каждой строки пар XO она меняется с true на false или наоборот.

Таким образом, первый символ строк (X или O) будет меняться в соответствии с "альтернативной" переменной.

Другие вопросы по тегам