【发布时间】:2015-04-13 22:58:04
【问题描述】:
我正在尝试定义一个函数,该函数接受两个输入,其输出将是一个列表,表示该函数下给定子集的图像。我期待它最终看起来像这样:
(image '(1 2 3) '((5 4) (3 4) (1 4) (2 6))) ----> (6 4)
到目前为止,我已经写了一些看起来像这样的东西:
(define (image subset-of-domain func-pairs)
(cond
((empty? (first subset-of-domain))
(null))
((equal? (first subset-of-domain) (first (first func-pairs)))
(rest (first func-pairs))) (else (image (rest subset-of-domain) (rest func-pairs)))))
从这些输入中,图像的输出应该是一个列表,表示该函数下给定子集的图像。另外,我想删除所有重复项,以便一个数字只显示一次(因此示例结果是 (6 4) 而不是 (4 6 4)。
谢谢,我在这个问题上已经坚持了一段时间了。感谢您的帮助。
【问题讨论】:
标签: scheme discrete-mathematics