このディレクトリの索引

http://pc12.2ch.net/test/read.cgi/tech/1269438098/558
#  C言語でモジュラス10ウェイト3のソースコードを教えてください。 
#  できれば解説もお願いします。 
# 

モジュラス10ウェイト3(_数値ならび,_チェックデジット) :-
          モジュラス10ウェイト3(_数値ならび,_,Sum),
          _チェックデジット is 10 - (Sum mod 10),!.

モジュラス10ウェイト3([A],3,B) :-
          B is A * 3,!.
モジュラス10ウェイト3([A|R],N,Sum) :-
          モジュラス10ウェイト3(R,M,Sum_1),
          モジュラス10ウェイト3トグル(M,N),
          Sum is Sum_1 + A * N,!.

モジュラス10ウェイト3トグル(3,1) :- !.
モジュラス10ウェイト3トグル(1,3) :- !.