카테고리 없음

[sml] SML : 목록에서 5 ~ 15 개 사이의 요소 수를 계산하는 방법

행복을전해요 2021. 1. 21. 01:32

List.foldr의 람다 함수에서 요소가 조건과 일치하면 합계에 1을 더해야하지만 그렇지 않으면 0을 더해야합니다. 이렇게하면 조건과 일치하는 요소의 수를 추적 할 수 있습니다.

val xs = [1,3,5,8,6,9,10,14,13,16,15]

val len = List.foldr (fn (x, t) => (if x > 5 andalso x < 15 then 1 else 0) + t) 0 xs

실행하면 다음과 같은 결과를 얻을 수 있습니다.

val xs = [1,3,5,8,6,9,10,14,13,16,15] : int list
val len = 6 : int


출처
https://stackoverflow.com/questions/22008881