Jeg bruker Dr. Racket, språk ganske stor, og jeg prøver å lage et enkelt binært søketre inn? metode, som vil returnere hvis en verdi i det binære søketre eller ikke. Det må være generell, akseptere noen form for søketre (om det inneholder strenger, ints, osv), men jeg kjører inn i denne feilmeldingen som er driver meg til vanvidd. Alle hjelpe er verdsatt, her er koden:
EDITED :: Det fungerer nå, men ikke med noe annet enn tall (eller i det minste ikke fungerer med strenger) .. Ny utgave:
(define (bstsearch tree value)
(cond
((null? tree) #f)
((< value (car tree))
(bstsearch (cadr tree) value))
((> value (car tree))
(bstsearch (caddr tree) value))
((= value (car tree))
#t)
))
Feilen Jeg mottar sier:
<: expects type <real number> as 1st argument, given: horse; other arguments were: horse
Når du bruker:
(bstsearch '(horse (cow () (dog () ())) (zebra (yak ()()) ())) horse)
som input.













