При первом вызове это заставит вас указать действительные номера столбцов и строк;квадрат будет установлен, turnTaker
будет увеличен, и цикл завершится.
Во второй раз, когда это вызывается, если выбранные номера строк и столбцов совпадают, то turnTaker
будет не увеличивается, поскольку выбранное место в массиве не равно 0. Поскольку validRow
и validCol
не равны 0, более того, он никогда не будет запрашивать у вас дополнительные числа - он просто перейдет в бесконечноециклическая печать сообщения без повторного запроса!
Ваше предложение "else", которое печатает сообщение, может исправить это, установив validRow
и validCol
в 0 снова.Как заметил кто-то другой, было бы намного лучше, если бы эти переменные и turnTaker
также были логическими, а не целыми числами.