⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 n2.pro

📁 Prolog开发的简单的几个人工智能方面的程序.含问题分析报告.
💻 PRO
字号:
domains 
  ilist=integer*
predicates
  append(ilist,ilist,ilist)
  merge_set(ilist,ilist,ilist)   /*并集merge_set(x,y,z)=>x+y=z*/
  member(integer,ilist,integer)      /*member(x,ilist)=>x belong_of ilist*/
  diff_set(ilist,ilist,ilist)  /*差集diff_set(x,y,z)=>z=x-y*/
  same_set(ilist,ilist,ilist)  /*交集same_set(x,y,z)=>x^y=z*/
  del_meb(integer,ilist,ilist)       /*删除ilist中的第integer个元素*/
clauses
  append([],Ilist,Ilist).
  append([Head|Tail],List2,[Head|List3]):-
    append(Tail,List2,List3).

  merge_set([],X,X):-!.
  merge_set(X,[],X):-!.
  merge_set([Head|Tail],List2,[Head|List3]):-
    not(member(Head,List2,_)),
    merge_set(Tail,List2,List3).
  merge_set([X1|X],Y,Z):-
    member(X1,Y,_),merge_set(X,Y,Z).  
    
    

  member(_,[],_):-
     fail.
  member(X,[X|_],1):-!.
  member(X,[_|List],P):-
     !,member(X,List,N),P=N+1.

  diff_set([],_,[]).
  diff_set([X1|X],Y,[X1|Z]):-
    not(member(X1,Y,_)),diff_set(X,Y,Z).
  diff_set([X1|X],Y,Z):-
    member(X1,Y,_),diff_set(X,Y,Z).     

  same_set([],_,[]).
  same_set(_,[],[]).
  same_set([X1|X],Y,[X1|Z]):-
    member(X1,Y,_),same_set(X,Y,Z),!.
  same_set([_|X],Y,Z):-
    same_set(X,Y,Z).
  
  del_meb(1,[_|List],List).
  del_meb(I,[X|List],Result):-
      M=I-1,del_meb(M,List,Temp),
      append([X],Temp,Result).      

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -