Бесконечный цикл в Go
Давайте теперь будем крутить цикл без проверки
в шапке. В Go нет отдельных слов while
и do-while. Повтор, который сам не заканчивается,
записывают ключевым словом for, и после
него сразу открывают тело.
Такой повтор сам не заканчивается. Обычно внутри ставят проверку и команду выхода, когда нужное условие наступило. Иначе программа так и останется в теле цикла.
Пусть будем считать круги в переменной и выйдем после третьего:
count := 0
for {
fmt.Println(count) // выведет 0, 1 и 2
count++
if count >= 3 {
break
}
}
Команда break прерывает повтор, хотя
форма записи без проверки в шапке могла бы
крутиться дальше.
Даны переменные:
turn := 0
stopAt := 4
Запустите повтор без шапки, печатайте turn
и увеличивайте его. Остановитесь после вывода
stopAt.
Дана переменная:
round := 0
Внутри бесконечного повтора ведите round,
на втором круге поднимите логический флаг
и выйдите, когда флаг истинен.
Скажите, почему опасно оставлять тело без выхода, если программа должна идти дальше после цикла.