10/01/29 18:56:47
>>497
% Prolog
'ファイルのデータ(英文)を読み込み、一行毎の文字数(スペースも含む)とワード数を数える'(_ファイル名) :-
'ファイルのデータ(英文)を読み込み'(_ファイル名,Lines),
'一行毎の文字数(スペースも含む)とワード数を数えて表示する'(Lines).
'ファイルのデータ(英文)を読み込み'(_ファイル名,Lines) :- get_lines(_ファイル名,lines).
'一行毎の文字数(スペースも含む)とワード数を数えて表示する'(Lines) :-
'一行毎の文字数(スペースも含む)とワード数を数えて表示する'(1,Lines).
'一行毎の文字数(スペースも含む)とワード数を数えて表示する'(_,[]) :- !.
'一行毎の文字数(スペースも含む)とワード数を数えて表示する'(N,[Line|R]) :-
文字数を数える(Line,_文字数),
ワード数を数える(Line,_ワード数),
write_formatted('=>%t:%t文字、%tワード\n',[N,_文字数,_ワード数]),
N2 is N + 1,
'一行毎の文字数(スペースも含む)とワード数を数えて表示する'(N2,R).
文字数を数える(Line,_文字数) :- sub_atom(Line,0,_文字数,0,Line),!.
ワード数を数える(Line,_ワード数) :-
split(Line,[' ','.'],語彙ならび),
length(語彙ならび,_ワード数),!.