pick

(define pick
  (lambda (n lat)
    (cond ((null? lat) '()) 
          ((= 1 n) (car lat))
          (else
           (pick (- n 1) (cdr lat))))))

(pick 4 '(aa bb cc ddd ee ff))
;ddd

答えと比べてみると
最終条件が zero? だなぁ。
あー 掟があったね。

掟を守って書き直し。

pick (掟を守る)

(define pick
  (lambda (n lat)
    (cond ((null? lat) '()) 
          ((zero? (sub1 n)) (car lat))
          (else
           (pick (sub1 n) (cdr lat))))))

(pick 4 '(aa bb cc ddd ee ff))
;ddd

なるほどねぇ。
つぎは 掟を守って rempick。

rempick

(define rempick
  (lambda (n lat)
    (cond ((null? lat) '())
          ((zero? (sub1 n)) (rempick  (sub1 n) (cdr lat)))
          (else
           (cons (car lat) (rempick (sub1 n) (cdr lat)))))))

(rempick 3 '(a b c d e))
;(a b d e)

問題なし。