>>274
% Prolog
t274(_文字数,_改行数,_コメント数) :-
  get_chars('test.txt',Chars),
  length(Chars,_文字数),
  改行数を数える(Chars,_改行数),
  コメント数を数える(Chars,_コメント).

改行数を数える(Chars,_改行数) :-
  findall(_,append(_,['\n'|_],Chars),L),
  length(L,_改行数).

コメント文字数を数える(Chars,_コメント文字数) :-
  append(_,['/','*'|L2],Chars),
  append(_コメント文字候補,['*','/'|_],L2),
  not(append(_,['/','*'|_],_コメント文字候補)),
  改行を取り除く(_コメント文字候補,_改行を取り除いたコメント文字候補),
  length(_改行を取り除いたコメント文字候補,_コメント文字数).

改行を取り除く([],[]).
改行を取り除く(['\n'|R1],R2) :-
  改行を取り除く(R1,R2),!.
改行を取り除く([A|R1],[A|R2]) :-
  not(A='\n'),
  改行を取り除く(R1,R2).