このディレクトリの索引
http://hibari.2ch.net/test/read.cgi/tech/1307166756/987
#  [1] 授業単元:C  
#  [2] 問題文(含コード&リンク):  
#  「空白を挟まず、何か入力してください。」と表示した後、入力された先頭文字が英字大文字、英字小文字、数字かを判定し、 
#  「先頭文字は○○です。」という表示を行うプログラムを作成しなさい。 
#  

'「空白を挟まず、何か入力してください。」と表示した後、入力された先頭文字が英字大文字、英字小文字、数字かを判定し、「先頭文字は○○です。」という表示を行う' :-
        '「空白を挟まず、何か入力してください。」と表示',
        入力された先頭文字が(_入力された先頭文字),
        '英字大文字、英字小文字、数字かを判定し'(_入力された先頭文字,_判定),
        '「先頭文字は○○です。」という表示を行う'(_判定).

'「空白を挟まず、何か入力してください。」と表示' :-
        write('空白を挟まず、何か入力してください。\n').

入力された先頭文字が(_入力された先頭文字) :-
        get_line(Line),
        sub_atom(Line,0,1,_,_入力された先頭文字).

'英字大文字、英字小文字、数字かを判定し'(_入力された先頭文字,英字大文字) :-
        _入力された先頭文字 @>= 'A',
        _入力された先頭文字 @=< 'Z',!.
'英字大文字、英字小文字、数字かを判定し'(_入力された先頭文字,英字小文字) :-
        _入力された先頭文字 @>= 'a',
        _入力された先頭文字 @=< 'z',!.
'英字大文字、英字小文字、数字かを判定し'(_入力された先頭文字,数字) :-
        _入力された先頭文字 @>= '0',
        _入力された先頭文字 @=< '9',!.
'英字大文字、英字小文字、数字かを判定し'(_入力された先頭文字,'英字大文字、英字小文字、数字の何れでもありません').

'「先頭文字は○○です。」という表示を行う'(_判定) :-
        writef('先頭文字は%tです。\n',[_判定]).