Я знаю, как получить первые n
элементы в списке,Получить последние п элементов в списке в DrRacket, без списка-реф
(define (countup n ls)
(cond
[(zero? n) '()]
[else (cons (first ls) (countup (sub1 n) (rest ls)))]))
, но как я могу сделать что-то подобное для последнегоn
элементы в списке (без использования списка-ref)?
Если я позвоню (countup 3 '(a b c d e))
, я получаю (list a b c)
. Мне нужно иметь возможность ввести (counter 3 '(a b c d e))
и получить (list c d e)
.
Мне нужны сообщения об ошибках в случае, если число n
указано больше, чем длина списка.
Мне нужно уметь это сделать без использования правильного выбора – KrissyMichaelsson
altho I благодарю вас за помощь, я не могу использовать trim, take, move или list-ref. – KrissyMichaelsson
Я не использую ни один из них, я просто определил две вспомогательные процедуры, которые называются 'move' и' trim-left'. Можно использовать дополнительные помощники, вы не можете легко решить эту проблему без них. –