📄 bahe.pro
字号:
domains
ilist=integer*
predicates
bahe(integer,ilist)
belong(integer,ilist)
prisub(integer,ilist)
int(integer,integer,ilist)
shif(ilist,ilist)
del(integer,ilist,ilist)
modd(integer,integer,integer)
no(integer,ilist,integer)
clauses
bahe(X,[Y1,Y2]):-
prisub(X,Y),no(I,Y,Y1),
Y2=X-Y1,
belong(Y2,Y).
no(1,[X|_],X).
no(I,[_|Y],Z):-no(M,Y,Z),I=M+1.
belong(_,[]):-fail.
belong(X,[X|_]):-!.
belong(X,[_|Y]):-belong(X,Y).
prisub(X,S1):-int(2,X,I1),shif(I1,S1).
int(L,H,[L|Result]):-
L<=H,
N=L+1,
int(N,H,Result).
int(A,B,[]):-A>B.
shif([],[]).
shif([I|X],[I|Y]):-
del(I,X,X1),
shif(X1,Y).
del(_,[],[]).
del(N1,[I|X],[I|Y]):-
not(modd(I,N1,0)),!,
del(N1,X,Y).
del(N1,[I|X],Y):-
modd(I,N1,0),
del(N1,X,Y).
modd(X,Y,Z):-Z=X mod Y.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -