Если это домашнее задание, будьте уверены, что единственный способ выучить любой язык программирования - попрактиковаться в этом и подумать о заданиях.Тем не менее, вот версия, которая может быть, что вы хотите
scan_list([]).
scan_list([H|T]) :- H > 0,!, print(H),nl,scan_list(T).
scan_list([_|T]) :- scan_list(T).
Это работает так:
?- scan_list([1,-2,7,9,0,-1,14]).
1
7
9
14
yes