Ответ в теме: Логическая задача: предвыборная дискуссия

      Комментарии к записи Ответ в теме: Логическая задача: предвыборная дискуссия отключены
#2783

Для начала надо описать типы данных — имена кандидатов, избирателей, составной тип для фиксации результатов голосования и тип списка результатов:

DOMAINS
	voter_d = per;zan;zak
	candidate_d = dubua;dupon;duran
	vote_d = vote(voter_d, candidate_d)
	
	votes_d = vote_d*

Затем нужно описать возможных кандидатов во внутренней базе данных для их последующего перебора:
PREDICATES
	nondeterm candidate(candidate_d)
CLAUSES
	candidate(dubua).
	candidate(dupon).
	candidate(duran).

Если вы уже сейчас запустите генерацию вариантов (для каждого избирателя запросите кандидата) — то получите 27 ответов:
GOAL 
	candidate(PerCandidate),
	candidate(ZanCandidate),
	candidate(ZakCandidate).

prolog_logical_task_votes_discussion