スキーム初心者です。私は以前、letrec を使用し、ラムダを使用してバインドする際に、このようなプログラムを実行していました。
(define (drop l n)
(letrec ((iter (lambda(ls x)
(cond ((null? ls) ls)
((> x 1) (cons (car ls) (iter (cdr ls) (- x 1))))
(else (iter (cdr ls) n)))))) (iter l n)))
(define factorial
(lambda (n)
(letrec ((iter
(lambda (product counter)
(if (> counter n)
product
(iter (* counter product)
(+ counter 1))))))
(iter 1 1)))
しかし最近、私たちの大学の評価機関が構造「ラムダ」の使用を許可していないことがわかりました。ラムダを使用せずに同様の問題を実行できる方法はありますか? 他の代替案を提案してください。