В настоящее время я вхожу в введение в Python и класс теории вычислений, и в последнее время на сложном вопросе был сложный вопрос, который я просто не смог решить. Это связано с написанием кода для программы, которая добавляет числа. Я считаю, что этот вопрос должен использовать рекурсию. Я не помню, как именно был сформулирован вопрос, но вот основная идея.
Внедрить функцию multiadder(n)
, которая принимает неотрицательное целое число n
и добавляет n
произвольные значения вместе. Каждое добавленное значение должно быть записано как отдельный вызов. Например:
>>> multi_three = multiadder(3)
>>> multi_three(1)(2)(3)
6
>>> multiadder(5)(1)(2)(3)(4)(5)
15
Код должен быть записан путем заполнения пробелов.
def multiadder(n):
assert n > 0
if _________________________ :
return _________________________
else:
return _________________________
Темы, которые мы рассмотрели в классе, - это функции более высокого порядка, рекурсия, лямбда и контрольные утверждения. Нам не разрешено использовать структуру данных, такую как списки и наборы, и нам не разрешено ничего импортировать.
Кто-то, пожалуйста, помогите. Это единственная проблема, с которой я не мог пройти тест!