Скажем, у меня есть две функции, которые возвращают списки ассоциаций, в которых вы даете общее количество бутылок, которые есть у каждого человека, и другое, которое дает количество дней, которое требуется для их получения. Как объединить списки, взяв среднее из двух списков? Учитываядве схемы списков ассоциаций
(define (lookup k alst)
(cond [(empty? alst)
empty]
[(equal? k (first (first alst)))
(second (first alst))]
[else
(lookup k (rest alst))]))
и
(define (put k v alst)
(cond [(empty? alst)
(list (list k v))]
[(equal? k (first (first alst)))
(cons (list k v) (rest alst))]
[else
(cons (first alst)
(put k v (rest alst)))]))
Так сказать, функция (total-bottles lst)
возвращает '((bob 10) (tim 30) (sally 25))
и
(days-taken lst)
вернется '((bob 2) (tim 3) (sally 5))
как бы я сделать функцию, чтобы объединить списки в среднем- функция бутылок в день, которая возвращала бы количество бутылок, собранных в среднем каждый день, чтобы вернуть этот результат? (average lst)
'((bob 5) (tim 10) (sally 5))
?
У обоих списков есть точно такие же лица? являются ли лица в точно таком же порядке в обоих списках? –
да, они в точном порядке и те же люди – user1869703