Как сделать повтор прохода по кейсам?
Внимание! Это довольно старый топик, посты в него не попадут в новые, и их никто не увидит. Пишите пост, если хотите просто дополнить топик, а чтобы задать новый вопрос — начните новый.
Внимание! Это довольно старый топик, посты в него не попадут в новые, и их никто не увидит. Пишите пост, если хотите просто дополнить топик, а чтобы задать новый вопрос — начните новый.
Сделать так, чтобы когда вводится любое число кроме 0-9,выводило «Введите число от 0 до 9» и свич снова проверял бы.
Ers, это круто: рекурсия на пустом месте! )))))
2Васька
Не проще написать что-то типа:
Хотя можно, конечно, свич и в цикле гонять, только это не эффективно:
Череп, Почему бы и не рекурсию? Тот же цикл, та же операция, тот же алгоритм.
Ers, потому что рекурсия жрёт стек. Реализовывать с помощью рекурсии циклы, да ещё с неопределённым условием завершения, по крайней мере, неосмотрительно. При исчерпании стека программа вылетит с маловразумительным сообщением типа «обращение к памяти, предназначенной только для чтения». Потом затрахаешься ловить эту ошибку.
Каждый инструмент предназначен для своей цели. Для циклов — есть операторы цикла. Рекурсия уместна и логична в других случаях, например при обходе дерева.
Кроме того, в твоём решении есть ещё одно маленькое «нехорошо»: использование глобальной переменной и, следовательно, использование функции с побочным эффектом. Этого надо всемерно избегать.