いろんな言語で宿題スレ 第三編
■ このスレッドは過去ログ倉庫に格納されています
0137デフォルトの名無しさん
2009/12/31(木) 06:56:21% Prolog
'京都市の区ごとの人口(人)と面積(平方キロメートル)が記述されているデータがある'('http://ime.nu/ime.nu/kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10318.txt').
区の名前,人口,面積のデータを格納する :-
'京都市の区ごとの人口(人)と面積(平方キロメートル)が記述されているデータがある'(_ウェブサイト),
get_split_lines(_ウェブサイト,[' '],Lines),
member([_区の名前,_人口,_面積],Lines),
assertz('京都市の区ごとの人口と面積のデータ'(_区の名前,_人口,_面積)),
fail.
区の名前,人口,面積のデータを格納する.
人口についてソートする(_整列されたデータならび) :-
findall([_人口,_区の名前,_人口,_面積],'京都市の区ごとの人口と面積のデータ'(_区の名前,_人口,_面積),L),
sort(L,L1),
降順に並べ直しながら鍵項目の削除する(L1,[],_整列されたデータならび).
面積についてソートする(_整列されたデータならび) :-
findall([_面積,_区の名前,_人口,_面積],'京都市の区ごとの人口と面積のデータ'(_区の名前,_人口,_面積),L),
sort(L,L1),
降順に並べ直しながら鍵項目の削除する(L1,[],_整列されたデータならび).
降順に並べ直しながら鍵項目を削除する([],X,X) :- !.
降順に並べ直しながら鍵項目を削除する([[_|L]|R],Y,X) :-
降順に並べ直しながら鍵項目を削除する(R,[L|Y],X).
■ このスレッドは過去ログ倉庫に格納されています