私はPrologを初めて利用しています。私はパラダイムプログラミングの主題を取っているので、私は数週間ごとに異なるプログラミングを学ぶ必要があります。Prologリストで家族最長と最年少の子供を見つけよう
私は、家族の中で最も長男と最年少の子供を見つけて練習をしました。私の知識データベースは以下のとおりです。
family(person(alex, fox, date(26, oct, 1970), work(ucl, wc1e)),
person(lan, fox, date(6, dec, 1971), unemployed),
[ person(adrian, fox, date(17, nov, 1996), unemployed),
person(lisa, fox, date(7, june, 2002), unemployed)
]).
family(person(james, bond, date(29, feb, 1950), work(mi6, secretLocation)),
person(girl, bond, date(01, dec, 2004), unemployed),
[]).
family(person(superman, hero, date(29, feb, 1979), unemployed),
person(superwoman, hero, date(29, feb, 1979), work(crisisSpot, anywhere)),
[ person(superbaby, hero, date(7, june, 2002), unemployed) ]).
family(person(picard, captain, date(29, feb, 2400), unemployed),
person(kirk, captain, date(29, feb, 2300), unemployed),
[ person(janeway, captain, date(29, feb, 2450), unemployed),
person(cisco, captain, date(29, feb, 2450), unemployed)
]).
私はすでに私は数回はまだアイデアを得ていないしようとしただけでこれだけ質問残り疑問を解決し、私はトラブルの理解がリストの仕事にどのように子供であることです。どんな助けもありがとう。
% Find eldest children in family
dateofbirth(person(_,_,Date,_), Date).
eldest(X,Y) :-
family(_,_,Kids),
member(X,Kids),
dateofbirth(X, date(_,_,Y)),
(dateofbirth(X, date(_,_,Y)).
上記は私の答えですが、まだ動作しません。
eldestはどういう意味ですか?これはちょうど1年か1月か1月かによるのでしょうか? – false
子供の年。返信してくれてありがとう。家族の中で一番年長の子供や幼い子供を見つける年。 – noleavename