У меня проблемы с ракеткой. Задание требует, чтобы я написал процедуру, которая преобразует любое число из базы 10 в базу 4, решение должно быть записано в виде списка. например (convert-to-base-four 12) -> (list 3 0) Теперь я написал процедуру, но она вставляет каждое число в отдельный список. вот мой код.
(define (convert-to-base-four number)
(cond
[(<= number 3) (cons number empty)]
[(> number 3) (reverse (list (remainder number 4)
(convert-to-base-four (floor (/ number 4)))))]))
Кто-нибудь знает что делать? Большое спасибо
list
, когда должны использоватьcons
. Также цифры будут перемешаны в неправильном порядке из-за множественныхreverse
вызовов на разных рекурсивных шагах. - person Alex Knauth   schedule 23.11.2017list
противcons
. Затем, как только это будет решено, вы должны выяснить, следует ли использовать реверс таким образом или нет. - person Alex Knauth   schedule 23.11.2017list
. Для заданных X и X он возвращает список X. Но у вас нет X и X, у вас есть цифра и список цифр, и вы хотите, чтобы он возвращал список цифр. Вы нарушаете подписьlist
. Здесь неправильно использовать. - person Alex Knauth   schedule 23.11.2017append
обычно неправильное решение для ракетки - используйте его только при необходимости - person Mulan   schedule 23.11.2017