я работаю над жесткой проблемой слова, которая записана ниже, и мне нужна помощь в попытке выяснить, как подойти к этому:Нужна помощь в попытке написать процедуру для этого в схеме
Предположим, у вас есть функция Scheme, которая подсчитывает количество людей, поднятых определенной шиной при заданной остановке. Шина имеет множество остановок, каждому из которых присваивается число от 1 до 100. Напишите процедуру схемы, которая принимает (i) функцию f, которая дает количество людей, поднятых с каждой остановки, и (0) ii) целое число m и возвращает число остановок, на которых автобус поднял м или меньше людей. Пример: предположим, что функция автобусной остановки пикап выглядит следующим образом:
(define (stops n)
(cond ((= n 10) 20)
((= n 18) 18)
((= n 39) 52)
((= n 52) 12)
((= n 58) 23)
((= n 70) 34)
((= n 73) 18)
((= n 82) 11)
((= n 97) 33)
(else 0)))
Когда процедура применяется к процедуре остановки выше и с учетом т = 20, он должен вернуть 5 потому что единственный остановок, где было 20 или меньше пассажиров подняли стопы 10, 18, 52, 73 и 82.
Моим первым подходом к этому было бы написать вспомогательную функцию для добавления параметра n, хотя я не совсем уверен, do (добавьте счет, может быть?). Кроме этого, я полностью застрял. Если бы я мог уточнить. руководство или направление этой проблемы, было бы весьма полезно.
Вам нужно написать функцию, которая принимает в качестве аргументов процедуры 'f' и номер' M'. Вам нужно вызывать 'f' с каждым числом' i' от '1' до' 100' и подсчитывать, сколько раз '(f i)' меньше или равно 'm'. –
Не могли бы вы объяснить немного больше? У меня все еще возникают проблемы с логикой всего этого. – user2789945