Гол:Сводная статистика Список слов
Отфильтровать все слова в списке, не начиная с указанного символа. Слова, начинающиеся с указанного символа, должны храниться в новом списке без его первого символа.
Проблема:
Если все слова в списке допускаются, он работает, как предполагалось. Когда слово в списке не разрешено, проверка завершается с ошибкой (как и ожидалось), но она выходит из предиката, не пытаясь продолжить следующее слово в списке (не ожидаемое), как при отступлении и попытке повторить следующее слово.
filter_word([Char|Rest], Char, Rest).
filter([], _, []).
filter([Word|Words], Char, [H|T]) :-
filter_word(Word, Char, H),
filter(Words, Char, T).
Это домашнее задание.
Очень хорошее объяснение, это своего рода «выскакивание» для меня. Теперь он отлично работает. Я не уверен, должен ли я редактировать в решении в своем сообщении, поскольку это было домашнее задание. – dudzor
, если вы хотите, чтобы мы это проверили, возможно, если это не так на вашем компьютере! :] – m09
@dudzor: пожалуйста, не публикуйте полное решение домашних заданий на SO. –