Check if all numbers in a list are different in prolog

后端 未结 7 1477
失恋的感觉
失恋的感觉 2021-01-18 10:02

I want to create a rule in prolog that checks if there\'s a repeated number in a list.

For example:

  • for [1,2,3,4] it will return tru
7条回答
  •  孤城傲影
    2021-01-18 10:43

    Very Simple Answer...

    The code:

    unique([]). unique([_,[]]). unique([H|T]):-not(member(H,T)),unique(T).

    Tests:

    ?-unique([1,2,3,4]). true. ?-unique([1,2,3,3]). false. ?-unique([a,b,12,d]). true ?-unique([a,b,a]). false

提交回复
热议问题