使用for循环遍历列表(球拍)

问题描述 投票:-3回答:1

我在编写使用for循环遍历数字列表并返回所有小于10的数字的函数时需要帮助,我不知道如果有人可以帮助我甚至从一个起点开始,我也不知道从哪里开始。欣赏它。

谢谢:)

racket
1个回答
2
投票

做这种事情的“标准”方法是用filter procedure。它使用predicate(指示条件是否为真的过程)和列表,并生成一个新列表,其中包含输入列表中满足谓词的那些元素。例如,我们可以生成一个仅包含数字输入列表中的偶数的列表,如下所示:

filter

在您的情况下,没有用于测试数字是否小于10的“内置”谓词,但是我们可以轻松定义一个:

(filter even? '(0 1 2 3 4 5 6))
;; => (0 2 4 6)

然后使用它过滤任何列表:

(define (<10 n)
  (< n 10))

尽管在这种情况下,我认为大多数人都希望改用(filter <10 '(1 4 15 23 25 4 8)) ;; => (1 4 4 8)

lambda

希望这会有所帮助!

© www.soinside.com 2019 - 2024. All rights reserved.