Напишите функцию (ноль-десять L), которая потребляет (список Nat) и возвращает все значения в L, которые имеют ноль в столбце 10 с.
Например, все 109, 4000 и 24601 имеют ноль в столбце 10 с, а 1011, 42 и 9 - нет.
Просто удалите последнюю цифру и проверьте, делится ли остаток на 10. Затем используйте filter :
(define (divisible? n d) (= 0 (remainder n d))) (define (zero-ten n) (let ((n1 (quotient n 10))) (and (positive? n1) (divisible? n1 10)))) (define (filter-zero-ten xs) (filter zero-ten xs))
Теперь (filter-zero-ten '(109 4000 24601 1011 42 9)) возвращает '(109 4000 24601)
(filter-zero-ten '(109 4000 24601 1011 42 9))
'(109 4000 24601)