scheme

    2热度

    1回答

    我试图感受一下Scheme中的绘图库,但是我已经遇到了问题。 (define defaultpos (make-posn 400 400)) (start 800 800) (draw-circle defaultpos 10 'green) 从理论上讲,这应该会在中间打开一个绿色圆圈的新窗口。相反,我得到这个错误信息: draw-circle: expects a posn as fir

    1热度

    1回答

    我想编写一个只保留降序数字并排除上升数字的函数。 例如: (descending '(6 5 3 1 2 8)) 应该给我(6 5 3 1)。 谢谢。

    0热度

    1回答

    我正在创建一个尾递归函数,它通过传递一个系数列表和一个x值来计算一个多项式。例如:评估x^3 + 2x^2 + 5,因此用户可以在函数调用(poly'(5 0 2 1)1)中通过列表'(5 0 2 1) )。 我想不通,为什么我收到以下错误: if: bad syntax in: (if (null? (cdr lst)) (+ total (car lst)) eval-poly-tail-he

    0热度

    1回答

    我想有,做递归以下 ;f(n) = n, if n<4 ;f(n) = f(n-1) + 2f(n-2) + 3f(n-3) + 4f(n-4) 这是我想出了一个功能,但它不包括在每一个乘法递归调用。我不知道一个如何落实与方案 (define (function n) (= counter 0) (if (< n 4) n (+ n (functi

    -1热度

    1回答

    好的元素列表数量最多,所以我定义3名列表: (define mylist '((pause 5 5 5)(note 3 4 5)(pause 3 4 4))) (define myseqlist '(sequential-music-element (note 5 5 5) (note 4 3 4) (note 5 3 4))) (define myparlist '(parallel-mus

    0热度

    2回答

    我开始学习Scheme(R5RS)并立即遇到问题。我有这样的代码: (define make-source (lambda (seq) (define next list) (define peek list) (let ((seq seq) ;(endl (if (null? endl) #f endl)) ) (lambda (s

    0热度

    1回答

    当前列表中删除第一个值我正在使我的自定义对象作为参数的函数,然后从该对象中的列表中获取第一个参数,将其返回并从对象中删除它。代码是: (define (make-source sequence . xs) (let ((a (if (not (null? xs)) xs (list #f)))) (cond ((string? sequence)

    0热度

    3回答

    我正在学习Scheme,所以我正在做一个有两个功能的程序,一个根据飞行人数和飞机上座位的数量计算有多少架飞机将飞行。直到那里一切都好,问题是当我尝试在另一个中使用该功能时,我不知道该怎么做。 第一功能: (define calculate-aeroplanes (lambda (passengers seats) (ceiling (/ passengers seats))))

    1热度

    1回答

    所以我一直在考虑了以下定义: (define head car) (define (tail stream) (force (cdr stream))) (define (addL x y)(cons-stream (+ (head x) (head y))(addL (tail x) (tail y)))) (define fibs(cons-stream 1(cons-stream

    -1热度

    2回答

    我的方案的功能正在试图获得全省细节: (define (getProvincesHelper sales provincesList) (if (null? sales) provincesList (getProvincesHelper (cdr sales) (append (list (cadr(cadddr sales))) provincesLis