프롤로그에서 목록을 스캔하려고합니다. 특히, predicate scan_list (list)를 쓰고 싶습니다. 그리고 현재 요소가 양의 정수인지 검사하고이를 인쇄 할 것인지 확인하려고합니다.프롤로그 목록에서 스캔 목록
감사합니다.
프롤로그에서 목록을 스캔하려고합니다. 특히, predicate scan_list (list)를 쓰고 싶습니다. 그리고 현재 요소가 양의 정수인지 검사하고이를 인쇄 할 것인지 확인하려고합니다.프롤로그 목록에서 스캔 목록
감사합니다.
, 예를 들면 : 그러나, 여기 당신이 그런 식으로 작동
scan_list([]).
scan_list([H|T]) :- H > 0,!, print(H),nl,scan_list(T).
scan_list([_|T]) :- scan_list(T).
을 원하는 될 수있는 버전입니다 당신은
?- include(<(0), [1, -2, 7, 9, 0, -1, 14, 0.8], L).
L = [1, 7, 9, 14, 0.8].
(경고 :이 특정 코드는 양의 정수보다 더 많은 숫자를 받아들입니다.) 쓸 수
문제는 이해하기 어렵다. 목록에서 모든 양의 정수를 인쇄하는 술어'scan_list'를 작성하려고한다는 것을 의미합니까? 그렇다면 무엇을 시도 했습니까? 무엇이 효과가 없었습니까? – svick