0
如何使用count
來計算列表中的特定數字?計算列表中的具體數字
(define lst '(1 1 1 1 2 2 2 3 3 3 3 3 4 4)
(count 2 lst);; what should I use at the place of '2'
但是,它導致以下錯誤。
count:合同違規
預計:程序?
下式給出:對於該程序返回true
列表中元素的2個
如何使用count
來計算列表中的特定數字?計算列表中的具體數字
(define lst '(1 1 1 1 2 2 2 3 3 3 3 3 4 4)
(count 2 lst);; what should I use at the place of '2'
但是,它導致以下錯誤。
count:合同違規
預計:程序?
下式給出:對於該程序返回true
列表中元素的2個
count
計數的數目。在這種情況下,您需要一個僅在元素爲2時才返回true的過程:(lambda (x) (equal? x 2))
。
在全面,你可以做
(define lst '(1 1 1 1 2 2 2 3 3 3 3 3 4 4))
(count (lambda (x) (equal? x 2)) lst)
附註:您可以通過(curry equal? 2)
替換lambda表達式縮短。
我以前從來沒有見過使用'咖哩'。它主要用於替換lambda表達式嗎? @Gibstick – Toat
@Toat是的,這就是我如何使用它(節省)。 – Gibstick