在球拍中,我如何使用filter
and创建一个过程,gcd
它执行以下操作:
(list-of-numbers) number = > (list)
结果列表在哪里包含列表中与单个数字相对质数的数字?
编辑:到目前为止,我已经想出了以下代码:
(define (coprime? list-of-num n)
(cond
[(empty? list-of-num) empty]
[else
(filter (lambda (num)
(= (gcd (first list-of-num) n) 1)) num))]))
但我完全迷失了,意识到这有点乱。我的一般想法是创建一个布尔函数,只要(gcd number-from-list number)
等于一就返回#t,然后该过程过滤列表中导致#t 的每个数字。