Scheme 如何为列表的均值和中位数编写方案程序?

Scheme 如何为列表的均值和中位数编写方案程序?,scheme,Scheme,我需要写一个基本的计划程序,可以找到一个列表的中位数和另一个平均值 这就是我到目前为止的想法: 意思是: 我知道我需要在某处划分长度,但不知道如何划分。我的思考过程是将每个元素添加到列表的堆栈中,然后除以列表的长度 中位数: 我不确定中位数从哪里开始。我知道我需要确定列表中的元素是奇数还是偶数,所以我想到了这个方法 (define (median lst) (if (integer? (/ (length lst) 2) ;which is the one for even 我不知道我是

我需要写一个基本的计划程序,可以找到一个列表的中位数和另一个平均值

这就是我到目前为止的想法:

意思是:

我知道我需要在某处划分长度,但不知道如何划分。我的思考过程是将每个元素添加到列表的堆栈中,然后除以列表的长度

中位数:

我不确定中位数从哪里开始。我知道我需要确定列表中的元素是奇数还是偶数,所以我想到了这个方法

(define (median lst)
  (if (integer? (/ (length lst) 2)  ;which is the one for even

我不知道我是否需要另一个程序才能进入名单的中间

已经讨论了
中值
程序

计算
平均值很简单,只需添加所有元素并除以列表的长度,唯一需要注意的特殊情况是当列表为空时(因为这将导致被零除:长度为零!),返回一个适当的值来指示这一点

到目前为止,您应该已经明确知道如何在列表中添加所有元素,如果有疑问,请与您的讲师联系,但这是一个基本操作,不应该是一个问题。

问题可能重复。
(define (median lst)
  (if (integer? (/ (length lst) 2)  ;which is the one for even