Впервые на схеме здесь, и у меня возникли проблемы с обучением делать циклы.Я пытаюсь создать функцию, которая будет принимать объект и вектор, а затем выполнять итерацию по вектору, пока не найдет этот объект.Когда объект найден, он возвращает список, содержащий все элементы в векторе перед объектом.Мой код ниже.Все, что он вернет, - это количество итераций, которые прошел цикл do, вместо списка, который я хочу.Если бы кто-нибудь мог помочь мне с синтаксисом, я был бы очень признателен.Спасибо!(в идеале это вернет (1 2))
(define(vector-test-iterative X Vector)
(do ((i 0 (+ i 1))) (< i (vector-length Vector))
(if (eqv? X (vector-ref Vector i))
(= i (vector-length Vector))
(cons (vector-ref Vector i) (ls '())))
ls))
(vector-test-iterative '4 #(1 2 4 3 5))