いろんな言語で宿題 第五編
■ このスレッドは過去ログ倉庫に格納されています
0176デフォルトの名無しさん
2010/07/01(木) 11:24:56% Prolog
学校のホームページに載っている休講情報に接続して、それから先生の名前と日にちだけ取り出す(URL,_休講情報ならび) :-
w3c(URL,Lines),
先生の名前と日にちだけ取り出す(Lines,_休講情報ならび),!.
先生の名前と日にちだけ取り出す(Lines,_休講情報ならび) :-
append(L0,[A|R1],Lines),
sub_atom(A,_,2,_,先生),
月日を取り出す(L0,_月,_日),
ある日の休講情報ならびを得る([A|R1],_月,_日,_ある日の休講となる情報ならび,_残りならび),
先生の名前と日にちだけ取り出す(_残りならび,R),
append(_ある日の休講となる情報ならび,_休講情報ならび),!.
先生の名前と日にちだけ取り出す(_,[]) :- !.
月日を取り出す(Lines,_月,_日) :-
append(_,[A|_],Lines),sub_atom(A,S,1,_,月),sub_atom(A,0,S,_,_月),
append(_,[B|_],Lines),sub_atom(A,S,1,_,日),sub_atom(B,0,S,_,_日),!.
ある日の休講情報ならびを得る([],_,_,[],[]) :- !.
ある日の休講情報ならびを得る(['\n'|R],_,_,[],R) :- !.
ある日の休講情報ならびを得る([A|R1],_月,_日,[[_氏名,_月,_日]|R2],_残りならび) :-
sub_atom(A,_,2,_,先生),
split(A,[' '],[_姓,_名,先生]),
concat_atom([_姓,_名],_氏名),
ある日の休講情報ならびを得る(R1,_月,_日,R2,_残りならび).
■ このスレッドは過去ログ倉庫に格納されています