このディレクトリの索引
http://pc12.2ch.net/test/read.cgi/tech/1248012902/565
#  【 課題 】http://ime.nu/rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/854.txt
# メッセージの流れる順番は次のようになる。
# 学生オブジェクト(yamada)から
# 1)教員への成績問い合わせメッセージ(askScore("0001"))
# 教員オブジェクト(endo)から
# 2)成績問い合わせのメッセージ(searchScore("0001"))
# 事務室オブジェクト(defaultOffice)から
# 3)得点または-1を返答
# 教員オブジェクト(endo)から
# 4)得点または-1を返答
# 
# この順番でメッセージを交換し学生オブジェクトが教員オブジェクトを経由して
# 自分の成績を知ることができるようにしなさい。
% Prologサーバーについては
% http://pc11.2ch.net/test/read.cgi/mysv/1102662133/ 参照

%%%%%%%%%%% 山田 サーバー %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
先生(国語,遠藤).

先生に成績を問い合わせる(国語,_応答) :-
  先生(国語,_先生),
  _先生 :: 国語の成績は何点でしょうか(山田,_応答).

%%%%%%%%%%% 遠藤 サーバー %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
国語の成績は何点でしょうか(_生徒,_応答) :-
  事務局 :: 係はだれですか(成績問い合わせ,_係),
  _係 :: 生徒の成績は何点でしょうか(遠藤,_生徒,国語,_応答).

%%%%%%%%%% 事務局 サーバー %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
係はだれですか(成績問い合わせ,defaultOffice).

%%%%%%%%%%% defaultOffice サーバー %%%%%%%%%%%%%%%%%%%%%%%%%%%%
生徒の成績は何点でしょうか(_先生,_生徒,_科目,_応答) :-
  成績簿(_生徒,_科目,_成績),
  concat_atom([_生徒,の,_科目,の成績は,_成績,点です],_応答).

成績簿(山田,国語,78).
成績簿(山田,数学,57).