Я хочу задать вопрос о возврате списка ... Факты:
КОМАНДА (ИМЯ КОМАНДЫ, ДИРЕКТОР, NATIOANALITY, OVERALLGOAL)
team (milan,allegri,italy, 8.5).
team (inter,benitez,italy,7.6).
team (barcelona,guardiola,spain,7.8).
team (realmadrid,mourinho,spain,7.2).
и я хочу создать предикат:find (T, N, G): T - это название команды, N - это национальность команды, и общая цель этой команды должна быть больше G. И результаты должны быть такими:
find([], spain,9). returns true
find(X, spain,6). returns X=[barcelona, realmadrid]
Я пытался сделать это с помощью:
find(T,N,G):-find1(T,N,G),is_set(T).
find1([]).
find1([T|Ts],N,G):-team(T,_,N,Gs),Gc>G,find1(Ts).
это дает результаты, но не как вывод выше ... если моя цель найти ([], Испания, 9).тогда дайте ложь ... если моя цель найти (X, Испания, 6).затем дайте сначала X = barcelona и дождитесь ";"после этого дайте X = realmadrid ... но я хочу список, как указано выше ...
Большое спасибо ...