このディレクトリの索引
http://pc12.2ch.net/test/read.cgi/tech/1258158172/62
#  [1] 授業単元:プログラミング  
#  [2] 問題文(含コード&リンク):  
#  問1:キーボードから身長を入力し、170cm以上なら「高い」と表示し、 
#  そうでなければ「低い」と表示するプログラムを作成しなさい。 
#   
#  問2:キーボードから身長を入力し、 
#  180cm以上なら「高い」、 
#  150cm以上、180cm未満なら「普通」、 
#  150cm未満なら「低い」と表示するプログラムを作成しなさい。 

'キーボードから身長をcm単位で入力し、170cm以上なら「高い」と表示し、そうでなければ「低い」と表示する' :-
'キーボードから身長をcm単位で入力し、'(_身長),
'170cm以上なら「高い」と表示し、そうでなければ「低い」と表示する'(_身長).

'キーボードから身長をcm単位で入力し、'(_身長) :-
write('身長をcm単位で入力してください : '),
数を得る(_身長).

数を得る(_数) :-
行入力(_行),
数検査(_行,_数).

行入力(_行) :-
read_line_to_codes(user_input,_コードならび),
atom_codes(_行,_コードならび).

数検査(_行,_数) :-
atom_number(_行,_数).

'170cm以上なら「高い」と表示し、そうでなければ「低い」と表示する'(_身長) :-
'170cm以上なら「高い」と表示し、'(_身長).
'170cm以上なら「高い」と表示し、そうでなければ「低い」と表示する'(_身長) :-
そうでなければ「低い」と表示する'(_身長).

'170cm以上なら「高い」と表示し、'(_身長) :-
_身長 >= 170,
write(高い).

'そうでなければ「低い」と表示する'(_身長) :-
\+(_身長 >= 170),
write(低い).

% ---------------------------------------------------------------------------

'キーボードから身長をcm単位で入力し、180cm以上なら「高い」、150cm以上、180cm未満なら「普通」、150cm未満なら「低い」と表示する' :-
'キーボードから身長をcm単位で入力し、'(_身長),
'180cm以上なら「高い」、150cm以上、180cm未満なら「普通」、150cm未満なら「低い」と表示する'(_身長).

'キーボードから身長をcm単位で入力し、'(_身長) :-
write('身長をcm単位で入力してください : '),
数を得る(_身長).

数を得る(_数) :-
行入力(_行),
数検査(_行,_数).

行入力(_行) :-
read_line_to_codes(user_input,_コードならび),
atom_codes(_行,_コードならび).

数検査(_行,_数) :-
atom_number(_行,_数).


'180cm以上なら「高い」、150cm以上、180cm未満なら「普通」、150cm未満なら「低い」と表示する'(_身長) :-
'180cm以上なら「高い」、150cm以上、180cm未満なら「普通」、150cm未満なら「低い」と'(_身長,_高いか普通か低いと),
表示する(_高いか普通か低いと).


'180cm以上なら「高い」、150cm以上、180cm未満なら「普通」、150cm未満なら「低い」と表示する'(_身長,_評価) :-
'180cm以上なら「高い」、'(_身長,_評価).
'180cm以上なら「高い」、150cm以上、180cm未満なら「普通」、150cm未満なら「低い」と表示する'(_身長,_評価) :-
'150cm以上、180cm未満なら「普通」、'(_身長,_評価).
'180cm以上なら「高い」、150cm以上、180cm未満なら「普通」、150cm未満なら「低い」と表示する'(_身長) :-
'150cm未満なら「低い」と'(_身長,_評価).


'180cm以上なら「高い」、'(_身長,高い) :-
_身長 >= 180.

'150cm以上、180cm未満なら「普通」、'(_身長,普通) :-
_身長 >= 150,
_身長 < 180.

'150cm未満なら「低い」と'(_身長,低い) :-
_身長 < 150.

表示する(_高いか普通か低いと) :-
writef('%w\n',[_高いか普通か低いと]).