- 503 名前:デフォルトの名無しさん mailto:sage [2009/07/17(金) 22:55:55 ]
- >>502
% Prolog nojiriko.asia/prolog/t502.html 入力文字列長の比較 :- write('文字列A ? '), get_line(A), write('文字列B ? '), get_line(B), 名前付き文字列長さの診断(文字列A,A,文字列B,B,_診断), write_formatted('%t\n',[_診断). 名前付き文字列長の診断(_名前1,_文字列1,_名前2,_文字列2,_診断) :- atom_chars(_文字列1,L1), atom_chars(_文字列2,L2), length(L1,_長さ1), length(L2,_長さ2), _長さの差 is _長さ1 - _長さ2 名前付き文字列長の診断の二(_名前1,_名前2,_長さの差,_診断),!. 名前付き文字列長の診断の二(_,_,0,'二つの文字列は同じです。') :- !. 名前付き文字列長の診断の二(_名前1,_名前2,_長さの差,_診断) :- _長さの差 > 0, concat_atom([_名前1,の方が,_長さの差,文字長いです。],_診断),!. 名前付き文字列長の診断の二(_名前1,_名前2,_長さの差,_診断) :- _長さの差 < 0, _長さの差1 is abs(_長さの差), concat_atom([_名前2,の方が,_長さの差1,文字長いです。],_診断).
|

|