HLabs Эксперт
123 подписчика
+ Специалист по компьютерам
Спросить
Вопрос на форуме эксперта
DemkinAV спросил 1 марта 2015 г.
Может ли рекурсивная процедура/функция не содержать в себе условных операторов и при этом не зацикливаться?
Ответ эксперта
Простой пример — парсим строчку. Для каждого элемента запускаем рекурсивно функцию парсения. Например, имеем два или три вида разделителей разных уровней. Условий нет, функция не циклится:)
Оцените качество ответа:
Работать с символами строки позволяет цикл for.
"запускаем рекурсивно" - это как? Есть понятие : обращение к процедуре и/или функции. А рекурсивно или нет - в момент обращения от нас не зависит, это свойство самой процедуры и/или функции, от её реализации. Для этого при её написании, она должна обращаться сама к себе (авторекурсия) хотя бы 1 раз.
Оператор "case" - тоже условный оператор, оператор выбора.
Именно они и запрещены при реализации рекурсивной процедуры/функции.
Прошу ответить ещё раз.