0

可能重复:
如何在 Prolog 中编写 cmp_list/3 函数?

提供了两个功能代码:第一个如下:

atom_integer(Atom, Int) :- atom_chars(Atom, C), number_chars(Int, C).

第二个如下:

integer_list([], []).
integer_list([Lst1|RLst1], [Lst2|RLst2]) :-
            atom_integer(Lst1, Lst2),
            integer_list(RLst1, RLst2).

现在,我需要编写 cmp-list/3 函数来获取以下内容:

?- cmp_list([2,3,4], [2,3,5], C).
C = lt ;
C = le .

?- cmp_list([1,2,3,4], [1,1,8], C).
C = gt ;
C = ge .

lt 表示小于;le 表示小于或等于;gt 表示大于;ge 表示大于或等于。

第一列表输入和第二列表输入表示软件的版本号,C表示两个版本的比较。此功能应用于检查哪个版本较新。对于两个空输入列表 [],答案可以是 le 和 ge。

提前致谢!

4

0 回答 0