[英]How to write a cmp_list/3 function in Prolog?
编写一个谓词
cmp_list/3
,前两个参数是2个列表,最后一个是Comparison
,表示ge
,lt
,le
或gt
。
ge
:大于或等于
lt
:小于
le
:小于或等于
gt
:大于
输出应该是这样的:
前两个列表代表软件的版本,该函数用于比较软件的两个版本以查看哪个版本较新:
?- 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 .
这闻起来像作业,所以我只给你一些提示。
le
或ge
)。 [], [V|Vt], ...
,在比较时可能是递归的结尾,例如1.2和1.2.3,因此第三个参数应为lt
。 gt
。 gt
或lt
。 如果它们相等,则在尾巴上递归。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.