Описание задачи
Программа принимает на вход список и определяет его длину при помощи рекурсии.
Решение задачи
- Инициализируем переменную списком.
- Определяем рекурсивную функцию, которая принимает список в качестве аргумента.
- В качестве базового условия рекурсии примем наличие в списке элементов. Если на вход функции подается пустой список, то функция возвращает
0и рекурсия останавливается. - В противном случае функция выводит сумму
1и рекурсивной функции, на вход которой подается исходный список без первого элемента. - После окончания работы функции выводим результат на экран.
- Конец.
Исходный код
Ниже дан исходный код, который осуществляет вычисление длины списка с использованием рекурсии. Результаты работы программы также даны ниже.
def length(lst):
if not lst:
return 0
return 1 + length(lst[1:])
a = [1, 2, 3]
print("Длина списка равна: ")
print(length(a))
Объяснение работы программы
- Инициализируем переменную
aсписком. - Определяем рекурсивную функцию
length(), которая принимает список в качестве аргумента. - В качестве базового условия рекурсии примем наличие в списке элементов. Если на вход функции подается пустой список, то функция возвращает
0и рекурсия останавливается. - В противном случае функция выводит сумму
1и рекурсивной функцииlength(), на вход которой подается исходный список без первого элемента. Это делается при помощи среза спискаlst[1:]. - После окончания работы функции выводим результат на экран.
Результаты работы программы
Пример 1: Длина списка равна: [1, 2, 3]

