0
нужна помощь по созданию этих двух рекурсивных программ в схеме итеративной? Я сделал рекурсию, но застрял в создании итерации для обоих.Рекурсивная схема программы для итеративного
вопрос 1 - рекурсия
(define mylength
(lambda (l)
(cond
((null? l) 0)
(else (+ 1 (mylength (cdr l)))))))
вопрос 1 - итерация?
вопрос 2 - рекурсия
(define mylistref
(lambda (l index)
(cond
((= index 0)(car l))
(else
(mylistref (cdr l) (- index 1))))))
вопрос 2 - итерация?
Вы, вероятно, имеете в виду рекурсивный итеративный процесс, поскольку схема имеет рекурсию для выполнения циклов. Итеративные вызовы в хвостовом положении, таким образом, повторение рекурсии является результатом вещи, в то время как рекурсивный процесс должен что-то делать с результатом. Таким образом, в первом примере его нужно добавить потом и, следовательно, рекурсивным. Второй - это итеративный процесс, так как после этого никакая работа не выполняется. Вы видите разницу? – Sylwester
Возможный дубликат [Рекурсия на итерацию с доказательством?] (Http://stackoverflow.com/questions/40253790/recursion-to-iteration-with-proof) – Renzo