-
Notifications
You must be signed in to change notification settings - Fork 0
/
ColorFrontier.pl
59 lines (47 loc) · 992 Bytes
/
ColorFrontier.pl
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
/*Color Frontier*/
/*Declaration of all color*/
couleur(rouge).
couleur(jaune).
couleur(vert).
couleur(bleu).
/* X and V can't be the same*/
voisin(X, V):-
X \= V.
/*Main program*/
region(R1,R2,R3,R4,R5,R6 ):-
/*Declaration of 6 variables of color*/
couleur(R1),
couleur(R2),
couleur(R3),
couleur(R4),
couleur(R5),
couleur(R6),
/*List of color which can't be the same*/
voisin(R1,R2),
voisin(R1,R3),
voisin(R1,R5),
voisin(R1,R6),
voisin(R2,R1),
voisin(R2,R3),
voisin(R2,R4),
voisin(R2,R5),
voisin(R2,R6),
voisin(R3,R1),
voisin(R3,R2),
voisin(R3,R4),
voisin(R3,R6),
voisin(R4,R2),
voisin(R4,R3),
voisin(R5,R1),
voisin(R5,R2),
voisin(R5,R6),
voisin(R6,R1),
voisin(R6,R2),
voisin(R6,R3),
voisin(R6,R5).
/* HOW TO USE THIS PROGRAM */
/*
* Command : region(A, B, C, D, E, F).
* The program will test every possibilty to put a color on every variable
* and respect all conditions
*/