このディレクトリの索引

#  問題
#  
#  「mldsg」のうち3文字からなる英小文字の文字列を
#  英大文字に変換して標準出力してください。
#  同じ文字を複数回使っても構いません。
#  言語はideoneで選択可能な言語を利用可能です。
#  

'「mldsg」のうち3文字からなる英小文字の文字列を
英大文字に変換して標準出力してください。
同じ文字を複数回使っても構いません。
言語はideoneで選択可能な言語を利用可能です。' :-
        forall(
                '「mldsg」のうち3文字からなる英小文字の文字列を'(_3文字からなる英小文字の文字列),
                '英大文字に変換して標準出力してください。'(_3文字からなる英小文字の文字列)).


'「mldsg」のうち3文字からなる英小文字の文字列を'(_3文字からなる英小文字の文字列) :-
        '3文字からなる英小文字の文字列を'(mldsg,[],_3文字からなる英小文字の文字列).

'3文字からなる英小文字の文字列を'(_,[_1,_2,_3],_3文字の文字列) :-
        atom_chars(_3文字の文字列,[_1,_2,_3]),!.
'3文字からなる英小文字の文字列を'(_文字列,L,_3文字の文字列) :-
        sub_atom(_文字列,_,1,_,_文字),
        '3文字からなる英小文字の文字列を'(_文字列,[_文字|L],_3文字の文字列).

'英大文字に変換して標準出力してください。'(_3文字からなる英小文字の文字列) :-
        英大文字に変換して(_3文字からなる英小文字の文字列,_3文字からなる英大文字の文字列),
        '標準出力してください。'(_3文字からなる英大文字の文字列).

英大文字に変換して(_3文字からなる英小文字の文字列,_3文字からなる英大文字の文字列) :-
        findall(_大文字,(
                    sub_atom(_3文字からなる英小文字の文字列,_,1,_,_小文字),
                    英小文字大文字(_小文字,_大文字)),
                _3文字からなる英大文字のならび),
        atom_chars(_3文字からなる英大文字の文字列,_3文字からなる英大文字のならび).

英小文字大文字(a,'A').
英小文字大文字(b,'B').
英小文字大文字(c,'C').
英小文字大文字(d,'D').
英小文字大文字(e,'E').
英小文字大文字(f,'F').
英小文字大文字(g,'G').
英小文字大文字(h,'H').
英小文字大文字(i,'I').
英小文字大文字(j,'J').
英小文字大文字(k,'K').
英小文字大文字(l,'L').
英小文字大文字(m,'M').
英小文字大文字(n,'N').
英小文字大文字(o,'O').
英小文字大文字(p,'P').
英小文字大文字(q,'Q').
英小文字大文字(r,'R').
英小文字大文字(s,'S').
英小文字大文字(t,'T').
英小文字大文字(u,'U').
英小文字大文字(v,'V').
英小文字大文字(w,'W').
英小文字大文字(x,'X').
英小文字大文字(y,'Y').
英小文字大文字(z,'Z').

'標準出力してください。'(_3文字からなる英大文字の文字列) :-
        writef('%t\n',[_3文字からなる英大文字の文字列]).


:- '「mldsg」のうち3文字からなる英小文字の文字列を
英大文字に変換して標準出力してください。
同じ文字を複数回使っても構いません。
言語はideoneで選択可能な言語を利用可能です。'.