Мой первый вопрос: DСхема Сумма с введенным номером и сроком
Я хочу написать функцию, которая дает мне сумму в соответствии с введенным номером и сроком.
У меня есть это прямо сейчас:
(define series (lambda (n a-term)
(if (= n 0)
0
(+ a-term (series (- n 1) a-term)))))
Я хочу, чтобы ввести натуральное число n
(сумма от 0 до n
), и я хочу, чтобы ввести a-term
, такие как (+ n 1)
или (sqr(n))
. В a-term
в основном говорится, как рассчитать сумму в сумме.
Я получаю сообщение об ошибке +: expects a number as 1st argument, given (lambda (a1) ...)
Так что в принципе это ожидает здесь: (+ a-term (series (- n 1) a-term)))))
, чтобы быть номером, но почему это не номер? Я имею в виду, если я введу номер для n, почему он не возвращает число на срок?
действительный звонок будет (series 10 (lambda (n) (sqr(n))))
. Результатом должна быть сумма всех скважин до 10 (385).
Другой пример может быть (series 100 (lambda (n) n))
. Результат будет 5050 = сумма всех чисел от 0 до 100
Я надеюсь, что вы можете понять мою проблему и извините за мой плохой английский
Можете ли вы привести пример того, как вы могли бы называть 'series' некоторыми аргументами и каков ожидаемый результат? – uselpa
уверен! отредактировал пример в вопросе выше – ViktorG