0

(给定一个电影列表,编写一个 PROLOG 规则来添加和显示总收入。)这是我的问题,我基本上是在尝试添加一个整数值,从下面的列表中给出一个电影列表。我是 Prolog 的新手,我不太了解事情是如何工作的。

takings(air_force_one,315000000).
takings(american_beauty,336000000).
takings(american_pie,201700000).
takings(american_wedding,230700000).
takings(armageddon,554600000).
takings(as_good_as_it_gets,313300000).
takings(austin_powers_in_goldmember,289000000).
takings(babe,249000000).
takings(back_to_the_future,350600000).
takings(back_to_the_future_part_ii,332000000).
takings(back_to_the_future_part_iii,243700000).
takings(robots,245600000).
takings(hulk,241700000).
takings(bad_boys_ii,261900000).

到目前为止,我写的规则只适用于一部电影。例子:

?-  score([robots],Y).
    Y = 245600000.

?- score([robots,hulk],Y).
false.

?- score([robots,hulk,bad_boys__ii],Y).
false.

写的规则:

score([Movies], Money):-
    findall(Profit,(takings(Movies, Profit)), ListOfProfit),
    sum_list(ListOfProfit, Money).


要求递归答案的相关问题。

4

0 回答 0