Шаг 77.
Язык программирования Go.
Рекурсивные функции

    На этом шаге рассмотрим рекурсивные функции в Go.

    Рекурсивная функция – это функция, вызывающая сама себя, а функции, вызывающие друг друга, называются взаимно рекурсивными. В языке Go имеется полная поддержка рекурсивных функций.

    Рекурсивные функции обычно имеют одну и ту же структуру: они включают "точку выхода" и "тело". Точка выхода – обычно условная инструкция, такая как инструкция if, используемая для остановки рекурсии на основе одного из аргументов. Тело – где выполняются основные действия, включая по меньшей мере один вызов самой себя (или парной, взаимно рекурсивной функции), – в этот вызов должен передаваться аргумент со значением, отличным от текущего и который проверяется в условии выхода, чтобы обеспечить завершение рекурсии.

    Задание 1. Вычислить первые 40 чисел Фибоначчи (рис.1):


Рис.1. Пример работы приложения

Раскрыть/скрыть решение и комментарии.

    На следующем шаге рассмотрим выбор функции во время выполнения в Go.


Предыдущий шаг Содержание Следующий шаг