有人可以帮我调试我的方案代码

时间:2015-06-26 20:14:00

标签: list sorting scheme

我想写一个简单的函数(最高L k),它取一个列表和整数K> 0,返回一个k最高数字的新列表。 (最高'(6 7 8 5 3 2)3)给(6 7 8)

(define (highest L k)
  (if (= k 0)
   '()
(cons (highesthelper (car L) L) 
  ((highest (remove (highesthelper (car L) L) L) (- k 1))))))


(define (remove E L)
 (cond
   ((null? L)'())
   ((= E (car L)) (cdr L))
   (else (cons (car L) (remove E (cdr L))))))

(define (highesthelper Hi L)
  (cond
  ((null? L) Hi)
  ((> Hi (car L)) highesthelper Hi (cdr L))
  (else (highesthelper (car L) (cdr L)))))

(highest '(1 7 4 5 3) 2)

我可以运行帮助程序并删除函数没有问题,但最高功能给我错误,有人可以帮助我吗?

由于

1 个答案:

答案 0 :(得分:0)

我修正了一些简单的错误。请特别注意calculatormade: \tadd.o sub.o multiply.o divide.o Calculator_Main.o gcc add.o sub.o multiply.o divide.o Calculator_Main.o -o calculatormade add.o: \tadd.c gcc add.c -c sub.o: \tsub.c gcc sub.c -c multiply.o: \tmultiply.c gcc multiply.c -c divide.o: \tdivide.c gcc divide.c -c Calculator_Main.o: \tCalculator_Main.c head.h gcc Calculator_Main.c -c clean: \trm calculatormade add.o sub.o multiply.o divide.o Calculator_Main.o 的{​​{1}}案例。

(> Hi (car L))