このディレクトリの索引
#  [1] 授業単元: プログラミング 
#  [2] 問題文(含コード&リンク): あるテキストファイルに含まれるA〜Zの個数をカウントするプログラムをつくれ。 
#  [3] 環境 
#   [3.1] OS: Windows 
#   [3.2] コンパイラ名とバージョン: lcc 
#   [3.3] 言語: C 
#  [4] 期限: 11月28日まで 
#  お願いします。どう検索すればいいかも分からないので教えていただきたいです。 
#  答えがほしいですが、ヒントをいただければ自分でも努力はします。

あるテキストファイルに含まれるA〜Zの個数をカウントする(_文字列,_カウントならび) :-
        atom_chars(_文字列,Chars),
        'A〜Zの個数をカウントする'(Chars,[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],_カウントならび).

'A〜Zの個数をカウントする'([],_カウントならび,_カウントならび).
文字カウント([_文字|R],_カウントならび_1,_カウントならび) :-
        文字カウント(_文字,_カウントならび_1,_カウントならび_2),
        'A〜Zの個数をカウントする'(R,_カウントならび_2,_カウントならび).

文字カウント('A',[A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z],[AA,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z]) :-
        AA is A + 1,!.
文字カウント('B',[A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z],[A,BB,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z]) :-
        BB is B + 1,!.
文字カウント('C',[A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z],[A,B,CC,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z]) :-
        CC is C + 1,!.
文字カウント('D',[A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z],[A,B,C,DD,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z]) :-
        DD is D + 1,!.
文字カウント('E',[A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z],[A,B,C,D,EE,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z]) :-
        EE is E + 1,!.
文字カウント('F',[A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z],[A,B,C,D,E,FF,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z]) :-
        FF is F + 1,!.
文字カウント('G',[A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z],[A,B,C,D,E,F,GG,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z]) :-
        GG is G + 1,!.
文字カウント('H',[A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z],[A,B,C,D,E,F,G,HH,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z]) :-
        HH is H + 1,!.
文字カウント('I',[A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z],[A,B,C,D,E,F,G,H,II,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z]) :-
        II is I + 1,!.
文字カウント('J',[A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z],[A,B,C,D,E,F,G,H,I,JJ,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z]) :-
        JJ is J + 1,!.
文字カウント('K',[A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z],[A,B,C,D,E,F,G,H,I,J,KK,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z]) :-
        KK is K + 1,!.
文字カウント('L',[A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z],[A,B,C,D,E,F,G,H,I,J,K,LL,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z]) :-
        LL is L + 1,!.
文字カウント('M',[A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z],[A,B,C,D,E,F,G,H,I,J,K,L,MM,N,O,P,Q,R,S,T,U,V,W,X,Y,Z]) :-
        MM is M + 1,!.
文字カウント('N',[A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z],[A,B,C,D,E,F,G,H,I,J,K,L,M,NN,O,P,Q,R,S,T,U,V,W,X,Y,Z]) :-
        NN is N + 1,!.
文字カウント('O',[A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z],[A,B,C,D,E,F,G,H,I,J,K,L,M,N,OO,P,Q,R,S,T,U,V,W,X,Y,Z]) :-
        OO is O + 1,!.
文字カウント('P',[A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z],[A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,PP,Q,R,S,T,U,V,W,X,Y,Z]) :-
        PP is P + 1,!.
文字カウント('Q',[A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z],[A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,QQ,R,S,T,U,V,W,X,Y,Z]) :-
        QQ is Q + 1,!.
文字カウント('R',[A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z],[A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,RR,S,T,U,V,W,X,Y,Z]) :-
        RR is R + 1,!.
文字カウント('S',[A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z],[A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,SS,T,U,V,W,X,Y,Z]) :-
        SS is S + 1,!.
文字カウント('T',[A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z],[A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,TT,U,V,W,X,Y,Z]) :-
        TT is T + 1,!.
文字カウント('U',[A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z],[A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,UU,V,W,X,Y,Z]) :-
        UU is U + 1,!.
文字カウント('V',[A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z],[A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,VV,W,X,Y,Z]) :-
        VV is V + 1,!.
文字カウント('W',[A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z],[A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,WW,X,Y,Z]) :-
        WW is W + 1,!.
文字カウント('X',[A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z],[A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,XX,Y,Z]) :-
        XX is X + 1,!.
文字カウント('Y',[A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z],[A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,YY,Z]) :-
        YY is Y + 1,!.
文字カウント('Z',[A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z],[A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,ZZ]) :-
        ZZ is Z + 1,!.
文字カウント(_,L,L).