1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| interval(A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R) :- vN is C + H + 4 * J + 3 * M, vO is D + f + 4 * i, vP is E + 2 * G + K + 5 * M, vQ is A + 5 * L, vR is B + 2 * H + 2 * K + 3 * L, vN >= 0, VO >= 0, vP >= 0, VQ >= 0, vR >= 0, vN =< N, vO =< O, vP =< P, vQ =< Q, vR =< R .
combinaison(A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R) :- C + H + 4 * J + 3 * M is N, D + F + 4 * I is O, E + 2 * G + K + 5 * M is P, A + 5 * L is Q, B + 2 * H + 2 * K + 3 * L is R, print([A,B,C,D,E,F,G,H,I,J,K,L,M]) .
combinaison(A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R) :- interval(A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R), A_plus_1 is A + 1, combinaison(A_plus_1,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R) .
combinaison(A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R) :- interval(A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R), B_plus_1 is B + 1, combinaison(A,B_plus_1,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R) .
combinaison(A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R) :- interval(A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R), C_plus_1 is C + 1, combinaison(A,B,C_plus_1,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R) .
combinaison(A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R) :- interval(A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R), D_plus_1 is D + 1, combinaison(A,B,C,D_plus_1,E,F,G,H,I,J,K,L,M,N,O,P,Q,R) .
combinaison(A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R) :- interval(A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R), E_plus_1 is E + 1, combinaison(A,B,C,D,E_plus_1,F,G,H,I,J,K,L,M,N,O,P,Q,R) .
combinaison(A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R) :- interval(A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R), F_plus_1 is F + 1, combinaison(A,B,C,D,E,F_plus_1,G,H,I,J,K,L,M,N,O,P,Q,R) .
combinaison(A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R) :- interval(A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R), G_plus_1 is G + 1, combinaison(A,B,C,D,E,F,G_plus_1,H,I,J,K,L,M,N,O,P,Q,R) .
combinaison(A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R) :- interval(A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R), H_plus_1 is H + 1, combinaison(A,B,C,D,E,F,G,H_plus_1,I,J,K,L,M,N,O,P,Q,R) .
combinaison(A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R) :- interval(A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R), I_plus_1 is I + 1, combinaison(A,B,C,D,E,F,G,H,I_plus_1,J,K,L,M,N,O,P,Q,R) .
combinaison(A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R) :- interval(A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R), J_plus_1 is J + 1, combinaison(A,B,C,D,E,F,G,H,I,J_plus_1,K,L,M,N,O,P,Q,R) .
combinaison(A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R) :- interval(A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R), K_plus_1 is K + 1, combinaison(A,B,C,D,E,F,G,H,I,J,K_plus_1,L,M,N,O,P,Q,R) .
combinaison(A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R) :- interval(A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R), L_plus_1 is L + 1, combinaison(A,B,C,D,E,F,G,H,I,J,K,L_plus_1,M,N,O,P,Q,R) .
combinaison(A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R) :- interval(A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R), M_plus_1 is M + 1, combinaison(A,B,C,D,E,F,G,H,I,J,K,L,M_plus_1,N,O,P,Q,R) . |
Partager