全部署のファイルから、従業員のレコードを探してこいって問題です。
なんかもう、都合のいいように仮定しまくった。
(define (find-employee-record employee-name files) (if (null? files) #f (let ((top-file (car files))) (let ((result (get-record (division top-file) top-file employee-name))) (if result result (find-employee-record employee-name (cdr files)))))))
get-recordは、ファイルの中に従業員のレコードがないときは#fを返す。
divisionはファイルを見て部署名を返す。