📄 prime3.bak
字号:
domains
int=integer
mylist=integer *
predicates
primes(int,mylist)
integers(int,int,mylist)
test(mylist,mylist)
remove(int,mylist,mylist)
writelist5(mylist)
write5(mylist,int)
clauses
primes(Limit,Ps):-integers(2,Limit,Is),
test(Is,Ps).
integers(Low,High,[Low|Rest]):-
Low<=High,!,M=Low+1,
integers(M,High,Rest).
integers(_,_,[]).
test([],[]).
test([I|Is],[I|Ps]):-remove(I,Is,New),
test(New,Ps).
remove(_,[],[]).
remove(P,[I|Is],Nis):-0=I mod P,
!,remove(P,Is,Nis).
remove(P,[I|Is],[I|Nis]):-remove(P,Is,Nis).
writelist5(L):- nl,write5(L,0),nl.
write5(L,5):- !,nl,write5(L,0).
write5([H|T],N):-writef("%3d",H),write(" "),
N1= N+1,write5(T,N1).
write5([],_).
goal
write("please input the uplimit N:"),
readint(N),nl,primes(N,Ps),writelist5(Ps).
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -