% Изкуствен интелект, Факултет по математика и информатика, СУ "св. Кл. Охридски"
% Решаване на ребуси от вида:

%

%    D O N A L D       [D,O,N,A,L,D]

% +  G E R A L D     + [G,E,R,A,L,D]

%  --------------    

%    R O B E R T     = [R,O,B,E,R,T]

%

% N1+N2=N

% D3=(C1+D1+D2) mod 10      C=(C1+D1+D2) div 10



summa(N1,N2,N):-summa1(N1,N2,N,0,0,[0,1,2,3,4,5,6,7,8,9],_).

summa1([],[],[],0,0,Digits,Digits).

summa1([D1|N1],[D2|N2],[D|N],C1,C,Digits1,Digits):-

       summa1(N1,N2,N,C1,C2,Digits1,Digits2),

       summadigits(D1,D2,C2,D,C,Digits2,Digits).



summadigits(D1,D2,C1,D,C,Digits1,Digits):-

	   del(D1,Digits1,Digits2),

           del(D2,Digits2,Digits3),

	   del(D,Digits3,Digits),

           S is D1+D2+C1,

           D is S mod 10 ,

           C is S // 10.

           	



del(A,L,L):-nonvar(A),!.

del(A,[A|L],L).

del(A,[B|L],[B|L1]):-del(A,L,L1).

