{"id":23952,"date":"2012-12-24T15:02:59","date_gmt":"2012-12-24T12:02:59","guid":{"rendered":"http:\/\/studentpmr.ru\/?p=23952"},"modified":"2012-12-24T15:02:59","modified_gmt":"2012-12-24T12:02:59","slug":"%d0%bb%d0%b0%d0%b1%d0%be%d1%80%d0%b0%d1%82%d0%be%d1%80%d0%bd%d1%8b%d0%b5-%d0%bf%d0%be-%d1%81%d0%b8%d0%b4","status":"publish","type":"post","link":"https:\/\/studentpmr.ru\/?p=23952","title":{"rendered":"\u041b\u0430\u0431\u043e\u0440\u0430\u0442\u043e\u0440\u043d\u044b\u0435 \u043f\u043e \u0421\u0418\u0414"},"content":{"rendered":"<p>domains<br \/>\n%\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u0442\u0438\u043f\u0430 \u0441\u043f\u0438\u0441\u043a\u0430<br \/>\nspisok=integer*<br \/>\npredicates<br \/>\n%\u0441\u043a\u043b\u0435\u0438\u0432\u0430\u043d\u0438\u0435 1\u0433\u043e \u0438 2\u0433\u043e \u0441\u043f\u0438\u0441\u043a\u043e\u0432 \u0432 3\u0439<br \/>\nskleivanie(spisok,spisok,spisok)<br \/>\n%\u0444\u0443\u043d\u043a\u0446\u0438\u044f \u0441\u0447\u0438\u0442\u044b\u0432\u0430\u043d\u0438\u044f \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0433\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430<br \/>\nlastEl(spisok,spisok)<br \/>\n<!--more--><br \/>\n%\u0432\u044b\u0432\u043e\u0434 \u043d\u0430 \u044d\u043a\u0440\u0430\u043d \u0441\u043f\u0438\u0441\u043a\u0430<br \/>\nlist (spisok)<br \/>\n%\u0444\u0443\u043d\u043a\u0446\u0438\u044f \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0441\u043f\u0438\u0441\u043a\u0430 \u0431\u0435\u0437 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0433\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430<br \/>\nwithoutL(spisok,spisok)<br \/>\n%\u0444\u0443\u043d\u043a\u0446\u0438\u044f \u0441\u0434\u0432\u0438\u0433\u0430 \u043d\u0430 1 \u044d\u0435\u043b\u0435\u043c\u0435\u043d\u0442 \u0432\u043f\u0440\u0430\u0432\u043e<br \/>\nsdvig(spisok,spisok)<br \/>\n%\u0433\u043b\u0430\u0432\u043d\u0430\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u044f<br \/>\ndo(integer,spisok)<br \/>\nclauses<br \/>\n%\u0432\u044b\u0432\u043e\u0434 \u043d\u0430 \u044d\u043a\u0440\u0430\u043d, \u043e\u0442\u0440\u0435\u0437\u0430\u0435\u0442\u0441\u044f \u0433\u043e\u043b\u043e\u0432\u0430, \u0438 \u0442\u0434 \u0440\u0435\u043a\u0443\u0440\u0441\u0438\u0432\u043d\u043e \u0432\u043d\u0443\u0442\u0440\u044c, \u043f\u043e\u0442\u043e\u043c \u0432\u044b\u0432\u043e\u0434 \u043d\u0430 \u044d\u043a\u0440\u0430\u043d \u0441 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0433\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430<br \/>\nlist([]).<br \/>\nlist([X|T]):-write(X,&#187; &#171;),list(T).<br \/>\n%\u0441\u043a\u043b\u0435\u0438\u0432\u0430\u043d\u0438\u0435 \u043e\u0442\u0440\u0435\u0437\u0430\u043d\u0438\u0435 \u0433\u043e\u043b\u043e\u0432\u044b \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0441\u043f\u0438\u0441\u043a\u0430.. \u0438 \u043f\u0440\u0438\u043a\u043b\u0435\u0438\u0432\u0430\u043d\u0438\u0435 \u0435\u0433\u043e \u043a\u043e \u0432\u0442\u043e\u0440\u043e\u043c\u0443 \u0432 3\u043c \u0441\u043f\u0438\u0441\u043a\u0435<br \/>\nskleivanie([], List, List).<br \/>\nskleivanie([X|L1], List2, [X|L3]) :- skleivanie(L1, List2, L3).<br \/>\n%\u0435\u0441\u043b\u0438 \u043e\u0441\u0442\u0430\u043b\u0441\u044f 1 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 \u0432 \u0441\u043f\u0438\u0441\u043a\u0435, \u0442\u043e \u0437\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0435\u0433\u043e \u0432 \u0441\u043f\u0438\u0441\u043e\u043a \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0435\u043d\u0438\u044f.<br \/>\nlastEl([X],Sp):-skleivanie([X],[],Sp).<br \/>\n%\u043e\u0442\u0440\u0435\u0437\u0430\u0442\u044c \u0441 \u0433\u043e\u043b\u043e\u0432\u044b \u043f\u0435\u0440\u0435\u0434\u0430\u043d\u043d\u043e\u0433\u043e \u0441\u043f\u0438\u0441\u043a\u0430 \u043f\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0443, \u043f\u043e\u043a\u0430 \u043d\u0435 \u043e\u0441\u0442\u0430\u043d\u0435\u0442\u0441\u044f 1 \u0448\u0442.<br \/>\nlastEl([X|Sp],Sp1):-lastEl(Sp,Sp1).<br \/>\n%\u0435\u0441\u043b\u0438 \u043e\u0441\u0442\u0430\u043d\u0435\u0442\u0441\u044f 1 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 \u0432 \u0441\u043f\u0438\u0441\u043a\u0435 \u0438\u0441\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0435\u0433\u043e<br \/>\nwithoutL([X],[]).<br \/>\n%\u043e\u0442\u0440\u0435\u0437\u0430\u0442\u044c \u0441 \u0433\u043e\u043b\u043e\u0432\u044b \u043f\u0435\u0440\u0435\u0434\u0430\u043d\u043d\u043e\u0433\u043e \u0441\u043f\u0438\u0441\u043a\u0430 \u043f\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0443, \u043f\u043e\u043a\u0430 \u043d\u0435 \u043e\u0441\u0442\u0430\u043d\u0435\u0442\u0441\u044f 1 \u0448\u0442, \u043f\u043e\u0442\u043e\u043c \u0441\u043a\u043b\u0435\u0438\u0432\u0430\u0442\u044c \u0438\u0445 \u043e\u0431\u0440\u0430\u0442\u043d\u043e \u0431\u0435\u0437 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0433\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430<br \/>\nwithoutL([X|Sp],Sp1):-<br \/>\nwithoutL(Sp,Sp2),<br \/>\nskleivanie([X],Sp2,Sp1).<br \/>\n%\u0441\u0434\u0432\u0438\u0433\u0430\u0435\u043c \u0441\u043f\u0438\u0441\u043e\u043a \u043d\u0430 1 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 \u0432\u043f\u0440\u0430\u0432\u043e(\u043e\u0442\u0440\u0435\u0437\u0430\u0435\u043c \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 \u0438 \u0432\u043a\u043b\u0435\u0438\u0432\u0430\u0435\u043c \u0432 \u043d\u0430\u0447\u0430\u043b\u043e \u0443\u0441\u0435\u0447\u0435\u043d\u043d\u043e\u0433\u043e \u0441\u043f\u0438\u0441\u043a\u0430)<br \/>\nsdvig(Sp,Sdvig):-<br \/>\nlastEl(Sp,LastEl),<br \/>\nwithoutL(Sp,Hvost),<br \/>\nskleivanie(LastEl,Hvost,Sdvig).<br \/>\n%\u0433\u043b\u0430\u0432\u043d\u0430\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u044f<br \/>\ndo(X,Sp):-X=0,list(Sp),!.<br \/>\ndo(X,Sp):-<br \/>\nY=X-1,<br \/>\nsdvig(Sp,Sdvig),<br \/>\ndo(Y,Sdvig).<\/p>\n<p>goal<br \/>\ndo(5,[1,2,3,4,5,6,7,8,9,0]).<\/p>\n<p>\tpredicates<br \/>\n\tpol (symbol, symbol)<br \/>\n\troditel (symbol, symbol)<br \/>\n        diadia(symbol, symbol)<br \/>\n\ttetia(symbol, symbol)<br \/>\n\tsuprug(symbol, symbol)<br \/>\n\tsvekr(symbol, symbol)<br \/>\n\tsvekrov(symbol, symbol)<br \/>\n\tclauses<br \/>\n\tsuprug(anna,sergey).<br \/>\n\tsuprug(sergey,anna).<br \/>\n\tsuprug(tatiana,dmitriy).<br \/>\n\tsuprug(dmitriy,tatiana).<br \/>\n\tsuprug(liza,petr).<br \/>\n\tsuprug(petr,liza).<br \/>\n\tsuprug(katya,mihail).<br \/>\n\tsuprug(mihail,katya).<br \/>\n\tsuprug(alex,raisa).<br \/>\n\tsuprug(raisa,alex).<br \/>\n\tsuprug(alexandr,juli).<br \/>\n\tsuprug(juli,alexandr).<br \/>\n\tpol(barbara,j).<br \/>\n\tpol(anna,j).<br \/>\n\tpol(sergey,m).<br \/>\n\tpol(tatiana,j).<br \/>\n\tpol(dmitriy,m).<br \/>\n\tpol(valera,m).<br \/>\n\tpol(liza,j).<br \/>\n\tpol(katya,j).<br \/>\n\tpol(petr,m).<br \/>\n\tpol(mihail,m).<br \/>\n\tpol(nikolay,m).<br \/>\n\tpol(alex,m).<br \/>\n\tpol(alexandr,m).<br \/>\n\tpol(juli,j).<br \/>\n\tpol(raisa,j).<br \/>\n\tpol(liuda,j).<br \/>\n\tpol(kostiya,m).<br \/>\n\troditel(barbara,lisa).<br \/>\n\troditel(anna,katya).<br \/>\n\troditel(anna,petr).<br \/>\n\troditel(sergey,katya).<br \/>\n\troditel(sergey,petr).<br \/>\n\troditel(tatiana,mihail).<br \/>\n\troditel(dmitriy,mihail).<br \/>\n\troditel(valera,nikolay).<br \/>\n\troditel(liza,alex).<br \/>\n\troditel(katya,juli).<br \/>\n\troditel(petr,alex).<br \/>\n\troditel(petr,alexandr).<br \/>\n\troditel(mihail,juli).<br \/>\n\troditel(nikolay,raisa).<br \/>\n\troditel(alex,kostiya).<br \/>\n\troditel(alexandr,liuda).<br \/>\n\troditel(juli,liuda).<br \/>\n\troditel(alex,kostiya).<br \/>\n\troditel(raisa,kostiya).<br \/>\n\tdiadia(D,P):- !,pol(D,m),roditel(DB,P),roditel(R,D),roditel(R,DB),DB><D.\n\ttetia(T,P):- pol(T,j),roditel(TB,P),roditel(R,T),roditel(R,TB),TB><T.\n\tsvekr(Svekr,Nevestka):-pol(Svekr,m),suprug(Nevestka,S),roditel(Svekr,S),pol(Nevestka,j).\n\tsvekrov(Svekrov,Nevestka):-pol(Svekrov,j),suprug(Nevestka,S),roditel(Svekrov,S),pol(Nevestka,j).\n\tGoal: \n\tdiadia(Diadia,P1emianik);\n\ttetia(Tetia,Plemiannik);\n\tsvekr(Svekr,Nevestka);\n\tsvekrov(Svekrov,Nevestka).\n\n\n\n\n\n\n\npredicates\nmashina(symbol)\nraznye(symbol,symbol,symbol,symbol,symbol)\ncveta(symbol,symbol,symbol,symbol,symbol)\nchig(symbol)\nchigk(symbol)\nclauses\n%??????? ???????? ????????\nraznye(R1,R2,R3,R4,R5):-\nR1><R2,R1><R3,R1><R4,R1><R5,\nR2><R3,R2><R4,R2><R5,\nR3><R4,R3><R5,\nR4><R5.\n%??????? ?????? ?????\nmashina(krasnaia).\nmashina(chernaia).\nmashina(siniaia).\nmashina(golubaia).\nmashina(belaia).\n%??????? ????????? ? ???\nchig(X):-X=chernaia;X=golubaia.\nchigk(X):-X=belaia;X=siniaia.\ncveta(A,B,C,D,E):-\nmashina(A),\nmashina(B),\nmashina(C),\nmashina(D),\nmashina(E),\nraznye(A,B,C,D,E),\n%??????? 1?? ?????\nA=krasnaia,\n%??????? 2?? ?????\nnot(B=chernaia),\nnot(B=siniaia),\nnot(B=golubaia),\n%??????? 4?? ?????\nchig(C),\n%??????? 5?? ?????\nchigk(E),\n%??????? 3?? ?????\nnot(D=belaia).\n\n\ngoal\n\ncveta(Ivan,Petr,Mihail,Aleksandr,Boris).\n\n\n\n\n\n\n\n\n\n\npredicates\nsamolet(symbol,symbol,symbol)\ndvigatel(symbol)\nu1(symbol,symbol)\nu2(symbol,symbol)\nu3(symbol,symbol,symbol)\nclauses\n%\u0437\u0430\u0434\u0430\u043d\u0438\u0435 \u0441\u0432\u043e\u0439\u0441\u0442\u0432 \u0434\u0432\u0438\u0433\u0430\u0442\u0435\u043b\u044f\ndvigatel(rab).\ndvigatel(ner).\n%\u0443\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u0435 1\u0433\u043e \u0443\u0447\u0435\u043d\u043d\u043e\u0433\u043e\nu1(D2,D3):-D2=ner,not(D3=ner).\n%\u0443\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u0435 2\u0433\u043e \u0443\u0447\u0435\u043d\u043d\u043e\u0433\u043e\nu2(D1,D3):-not(D1=ner);D3=ner.\n%\u0443\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u0435 3\u0433\u043e \u0443\u0447\u0435\u043d\u043d\u043e\u0433\u043e\nu3(D1,D2,D3):-not(D3=ner),D2=ner;D1=ner.\n%\u043e\u0431\u0449\u0430\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430\nsamolet(D1,D2,D3):-\n%\u0437\u0430\u0434\u0430\u043d\u0438\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u0441\u0432\u043e\u0439\u0441\u0442\u0432\ndvigatel(D1),\ndvigatel(D2),\ndvigatel(D3),\n%\u0437\u0430\u0434\u0430\u043d\u0438\u0435 \u0443\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u0439\nu1(D2,D3),\nu2(D1,D3),\nu3(D1,D2,D3).\ngoal\nsamolet(D1,D2,D3).\n\n\n\n\npredicates\nres(unsigned, real)\n\nclauses\n %\u0435\u0441\u043b\u0438 \u0440\u0435\u043a\u0443\u0440\u0441\u0438\u044f \u0434\u043e\u0448\u043b\u0430 \u0434\u043e 1, \u0442\u043e \u043e\u0431\u0440\u0435\u0437\u0430\u0442\u044c.\nres(1, 1) :- !.\n%\u0441\u0430\u043c\u0430 \u0440\u0435\u043a\u0443\u0440\u0441\u0438\u044f\nres(X, SumX) :-\nY = X-1,\nres(Y, SumY),\nSumX = ((2*X)\/(2*X+1))+SumY.\ngoal\nrandom(15,N),\t\nres(N, SumN).  \n\n\n\n\n\n\n\npredicates\nres(unsigned,unsigned,unsigned,real)\n\nclauses\n %\u043e\u043a\u043e\u043d\u0447\u0430\u043d\u0438\u0435 \u0440\u0435\u043a\u0443\u0440\u0441\u0438\u0438\nres(X,N,K,Res) :- X=N,Res=sqrt(N*K),!.\n%\u0441\u0430\u043c\u0430 \u0440\u0435\u043a\u0443\u0440\u0441\u0438\u044f\nres(X,N,K,Res) :-\nY=X+1,\nres(Y,N,K,ResR),\nRes=sqrt(K*X+ResR).\ngoal\nOt=1,\nrandom(15,Do),\nrandom(15,K),\nres(Ot,Do,K,Res).  \n\n\n\n\ndomains\n%\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u0442\u0438\u043f\u0430 \u0441\u043f\u0438\u0441\u043a\u0430\nspisok=integer*\npredicates\n%\u0441\u043a\u043b\u0435\u0438\u0432\u0430\u043d\u0438\u0435 1\u0433\u043e \u0438 2\u0433\u043e \u0441\u043f\u0438\u0441\u043a\u043e\u0432 \u0432 3\u0439\nskleivanie(spisok,spisok,spisok)\n%\u0444\u0443\u043d\u043a\u0446\u0438\u044f \u0442\u0440\u0435\u0431\u0443\u0435\u043c\u0430\u044f \u0432 \u0437\u0430\u0434\u0430\u043d\u0438\u0438\nproc(integer,integer,spisok)\n%\u0432\u044b\u0432\u043e\u0434 \u043d\u0430 \u044d\u043a\u0440\u0430\u043d \u0441\u043f\u0438\u0441\u043a\u0430\nlist (spisok)  \n%\u0433\u043b\u0430\u0432\u043d\u0430\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u044f\ngo                     \nclauses\n%\u0432\u044b\u0432\u043e\u0434 \u043d\u0430 \u044d\u043a\u0440\u0430\u043d, \u043e\u0442\u0440\u0435\u0437\u0430\u0435\u0442\u0441\u044f \u0433\u043e\u043b\u043e\u0432\u0430, \u0438 \u0442\u0434 \u0440\u0435\u043a\u0443\u0440\u0441\u0438\u0432\u043d\u043e \u0432\u043d\u0443\u0442\u0440\u044c, \u043f\u043e\u0442\u043e\u043c \u0432\u044b\u0432\u043e\u0434 \u043d\u0430 \u044d\u043a\u0440\u0430\u043d \u0441 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0433\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430\nlist([]).\nlist([X|T]):-list(T),write(X,\" \").\n%\u0441\u043a\u043b\u0435\u0438\u0432\u0430\u043d\u0438\u0435 \u043e\u0442\u0440\u0435\u0437\u0430\u043d\u0438\u0435 \u0433\u043e\u043b\u043e\u0432\u044b \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0441\u043f\u0438\u0441\u043a\u0430.. \u0438 \u043f\u0440\u0438\u043a\u043b\u0435\u0438\u0432\u0430\u043d\u0438\u0435 \u0435\u0433\u043e \u043a\u043e \u0432\u0442\u043e\u0440\u043e\u043c\u0443 \u0432 3\u043c \u0441\u043f\u0438\u0441\u043a\u0435\nskleivanie([], List, List). \nskleivanie([X|L1], List2, [X|L3]) :- skleivanie(L1, List2, L3).\n%\u0443\u0441\u043b\u043e\u0432\u0438\u044f \u0432\u044b\u0445\u043e\u0434\u0430 \u0438 \u0432\u044b\u0432\u043e\u0434 \u043d\u0430 \u044d\u043a\u0440\u0430\u043d \u0433\u043e\u0442\u043e\u0432\u043e\u0433\u043e \u0441\u043f\u0438\u0441\u043a\u0430\nproc(X1,X2,Sp):-X1>X2,<br \/>\nlist(Sp),<br \/>\n!.<br \/>\n%\u0442\u0435\u043b\u043e \u0441\u0430\u043c\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0438<br \/>\nproc(X1,X2,Sp):-<br \/>\nY=X2-1,<br \/>\nskleivanie(Sp,[X2],Sp1),<br \/>\nproc(X1,Y,Sp1).<br \/>\n%\u0433\u043b\u0430\u0432\u043d\u0430\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u044f<br \/>\ngo:-<br \/>\nrandom(30,X2),<br \/>\nrandom(X2,X1),<br \/>\nSp=[],<br \/>\nproc(X1,X2,Sp).<br \/>\ngoal<br \/>\ngo.<\/p>\n<p>domains<br \/>\n%\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u0442\u0438\u043f\u0430 \u0441\u043f\u0438\u0441\u043a\u0430<br \/>\nspisok=integer*<br \/>\npredicates<br \/>\n%\u0441\u043a\u043b\u0435\u0438\u0432\u0430\u043d\u0438\u0435 1\u0433\u043e \u0438 2\u0433\u043e \u0441\u043f\u0438\u0441\u043a\u043e\u0432 \u0432 3\u0439<br \/>\nskleivanie(spisok,spisok,spisok)<br \/>\n%\u0444\u0443\u043d\u043a\u0446\u0438\u044f \u0441\u0447\u0438\u0442\u044b\u0432\u0430\u043d\u0438\u044f \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0433\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430<br \/>\nlastEl(spisok,spisok)<br \/>\n%\u0432\u044b\u0432\u043e\u0434 \u043d\u0430 \u044d\u043a\u0440\u0430\u043d \u0441\u043f\u0438\u0441\u043a\u0430<br \/>\nlist (spisok)<br \/>\n%\u0444\u0443\u043d\u043a\u0446\u0438\u044f \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0441\u043f\u0438\u0441\u043a\u0430 \u0431\u0435\u0437 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0433\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430<br \/>\nwithoutL(spisok,spisok)<br \/>\n%\u0444\u0443\u043d\u043a\u0446\u0438\u044f \u0441\u0434\u0432\u0438\u0433\u0430 \u043d\u0430 1 \u044d\u0435\u043b\u0435\u043c\u0435\u043d\u0442 \u0432\u043f\u0440\u0430\u0432\u043e<br \/>\nsdvig(spisok,spisok)<br \/>\n%\u0433\u043b\u0430\u0432\u043d\u0430\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u044f<br \/>\ndo(integer,spisok)<br \/>\nclauses<br \/>\n%\u0432\u044b\u0432\u043e\u0434 \u043d\u0430 \u044d\u043a\u0440\u0430\u043d, \u043e\u0442\u0440\u0435\u0437\u0430\u0435\u0442\u0441\u044f \u0433\u043e\u043b\u043e\u0432\u0430, \u0438 \u0442\u0434 \u0440\u0435\u043a\u0443\u0440\u0441\u0438\u0432\u043d\u043e \u0432\u043d\u0443\u0442\u0440\u044c, \u043f\u043e\u0442\u043e\u043c \u0432\u044b\u0432\u043e\u0434 \u043d\u0430 \u044d\u043a\u0440\u0430\u043d \u0441 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0433\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430<br \/>\nlist([]).<br \/>\nlist([X|T]):-write(X,&#187; &#171;),list(T).<br \/>\n%\u0441\u043a\u043b\u0435\u0438\u0432\u0430\u043d\u0438\u0435 \u043e\u0442\u0440\u0435\u0437\u0430\u043d\u0438\u0435 \u0433\u043e\u043b\u043e\u0432\u044b \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0441\u043f\u0438\u0441\u043a\u0430.. \u0438 \u043f\u0440\u0438\u043a\u043b\u0435\u0438\u0432\u0430\u043d\u0438\u0435 \u0435\u0433\u043e \u043a\u043e \u0432\u0442\u043e\u0440\u043e\u043c\u0443 \u0432 3\u043c \u0441\u043f\u0438\u0441\u043a\u0435<br \/>\nskleivanie([], List, List).<br \/>\nskleivanie([X|L1], List2, [X|L3]) :- skleivanie(L1, List2, L3).<br \/>\n%\u0435\u0441\u043b\u0438 \u043e\u0441\u0442\u0430\u043b\u0441\u044f 1 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 \u0432 \u0441\u043f\u0438\u0441\u043a\u0435, \u0442\u043e \u0437\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0435\u0433\u043e \u0432 \u0441\u043f\u0438\u0441\u043e\u043a \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0435\u043d\u0438\u044f.<br \/>\nlastEl([X],Sp):-skleivanie([X],[],Sp).<br \/>\n%\u043e\u0442\u0440\u0435\u0437\u0430\u0442\u044c \u0441 \u0433\u043e\u043b\u043e\u0432\u044b \u043f\u0435\u0440\u0435\u0434\u0430\u043d\u043d\u043e\u0433\u043e \u0441\u043f\u0438\u0441\u043a\u0430 \u043f\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0443, \u043f\u043e\u043a\u0430 \u043d\u0435 \u043e\u0441\u0442\u0430\u043d\u0435\u0442\u0441\u044f 1 \u0448\u0442.<br \/>\nlastEl([X|Sp],Sp1):-lastEl(Sp,Sp1).<br \/>\n%\u0435\u0441\u043b\u0438 \u043e\u0441\u0442\u0430\u043d\u0435\u0442\u0441\u044f 1 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 \u0432 \u0441\u043f\u0438\u0441\u043a\u0435 \u0438\u0441\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0435\u0433\u043e<br \/>\nwithoutL([X],[]).<br \/>\n%\u043e\u0442\u0440\u0435\u0437\u0430\u0442\u044c \u0441 \u0433\u043e\u043b\u043e\u0432\u044b \u043f\u0435\u0440\u0435\u0434\u0430\u043d\u043d\u043e\u0433\u043e \u0441\u043f\u0438\u0441\u043a\u0430 \u043f\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0443, \u043f\u043e\u043a\u0430 \u043d\u0435 \u043e\u0441\u0442\u0430\u043d\u0435\u0442\u0441\u044f 1 \u0448\u0442, \u043f\u043e\u0442\u043e\u043c \u0441\u043a\u043b\u0435\u0438\u0432\u0430\u0442\u044c \u0438\u0445 \u043e\u0431\u0440\u0430\u0442\u043d\u043e \u0431\u0435\u0437 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0433\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430<br \/>\nwithoutL([X|Sp],Sp1):-<br \/>\nwithoutL(Sp,Sp2),<br \/>\nskleivanie([X],Sp2,Sp1).<br \/>\n%\u0441\u0434\u0432\u0438\u0433\u0430\u0435\u043c \u0441\u043f\u0438\u0441\u043e\u043a \u043d\u0430 1 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 \u0432\u043f\u0440\u0430\u0432\u043e(\u043e\u0442\u0440\u0435\u0437\u0430\u0435\u043c \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 \u0438 \u0432\u043a\u043b\u0435\u0438\u0432\u0430\u0435\u043c \u0432 \u043d\u0430\u0447\u0430\u043b\u043e \u0443\u0441\u0435\u0447\u0435\u043d\u043d\u043e\u0433\u043e \u0441\u043f\u0438\u0441\u043a\u0430)<br \/>\nsdvig(Sp,Sdvig):-<br \/>\nlastEl(Sp,LastEl),<br \/>\nwithoutL(Sp,Hvost),<br \/>\nskleivanie(LastEl,Hvost,Sdvig).<br \/>\n%\u0433\u043b\u0430\u0432\u043d\u0430\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u044f<br \/>\ndo(X,Sp):-X=0,list(Sp),!.<br \/>\ndo(X,Sp):-<br \/>\nY=X-1,<br \/>\nsdvig(Sp,Sdvig),<br \/>\ndo(Y,Sdvig).<\/p>\n<p>goal<br \/>\ndo(12,[1,2,3,4,5,6,7,8,9,0]).<\/p>\n<p>\/*\tcreate_tree (A, B) \u043f\u043e\u043c\u0435\u0449\u0430\u0435\u0442 A \u0432 \u043f\u043e\u043b\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 \u043e\u0434\u043d\u043e\u0443\u0437\u043b\u043e\u0432\u043e\u0433\u043e<br \/>\n\t\t\t  \u0434\u0435\u0440\u0435\u0432\u0430 B<br \/>\n\t insert_left (A, B, C) \u0432\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 A \u043a\u0430\u043a \u043b\u0435\u0432\u043e\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0435\u0432\u043e B<br \/>\n\t\t\t    \u0438 \u043f\u0440\u0438\u0441\u0432\u0430\u0438\u0432\u0430\u0435\u0442 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 C<br \/>\n\t insert_right (A, B, C) \u0432\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 A \u043a\u0430\u043a \u043f\u0440\u0430\u0432\u043e\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0435\u0432\u043e<br \/>\n\t\t\t    B \u0438 \u043f\u0440\u0438\u0441\u0432\u0430\u0438\u0432\u0430\u0435\u0442 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 C *\/<\/p>\n<p>domains<br \/>\ntreetype = tree (string, treetype, treetype); empty ()<br \/>\npredicates<br \/>\nres(treetype,integer)<br \/>\ncreate_tree (string, treetype)<br \/>\ninsert_left (treetype, treetype, treetype)<br \/>\ninsert_right (treetype, treetype, treetype)<br \/>\nobhodLVL(treetype,integer,integer)<br \/>\nrun<br \/>\nclauses<\/p>\n<p>create_tree (A, tree (A, empty, empty)).<br \/>\ninsert_left (X, tree (A, _, B), tree (A, X, B)).<br \/>\ninsert_right (X, tree (A, B, _), tree (A, B, X)).<br \/>\nobhodLVL(empty,C,C):-true.<br \/>\nobhodLVL(tree(Item,Left,Right),C,C):-<br \/>\nwrite(Item,&#187; || &#171;).<br \/>\nobhodLVL(tree (Item,Left,Right),CurL,Count):-<br \/>\nY=Count+1,<br \/>\nobhodLVL(Left,CurL,Y),<br \/>\nobhodLVL(Right,CurL,Y).<\/p>\n<p>res(Tree,Ind):-obhodLVL(Tree,Ind,1),Y=Ind+1,res(Tree,Y).<br \/>\nrun:-<br \/>\n%\u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043e\u0434\u043d\u043e\u0443\u0437\u043b\u043e\u0432\u044b\u0445 \u0434\u0435\u0440\u0435\u0432\u044c\u0435\u0432<br \/>\ncreate_tree (&#171;\u042f&#187;, A),<br \/>\ncreate_tree (&#171;\u043f\u043e\u0448\u0435\u043b&#187;, B),<br \/>\ncreate_tree (&#171;\u043e\u0441\u0442\u0430\u043b\u0441\u044f&#187;, C),<br \/>\ncreate_tree (&#171;\u0432 \u0448\u043a\u043e\u043b\u0443&#187;, D),<br \/>\ncreate_tree (&#171;\u0433\u0443\u043b\u044f\u0442\u044c&#187;, E),<br \/>\ncreate_tree (&#171;\u0434\u043e\u043c\u0430&#187;, F),<br \/>\ncreate_tree (&#171;\u0443 \u0434\u0440\u0443\u0433\u0430&#187;, G),<br \/>\ncreate_tree (&#171;\u0443\u0447\u0438\u043b\u0441\u044f&#187;, H),<br \/>\ncreate_tree (&#171;\u0437\u0430\u0441\u044b\u043f\u0430\u043b&#187;, J),<br \/>\ncreate_tree (&#171;\u0431\u043e\u043b\u0435\u043b&#187;, K),<br \/>\ncreate_tree (&#171;\u0440\u0430\u0437\u0432\u043b\u0435\u043a\u0430\u043b\u0441\u044f&#187;, L),<br \/>\n%\u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u0434\u0435\u0440\u0435\u0432\u044c\u0435\u0432<br \/>\ninsert_right(L,G,G2),<br \/>\ninsert_left(K,F,F1),<br \/>\ninsert_left(F1,C,F2),<br \/>\ninsert_right(G2,F2,F3),%\u043f\u0440\u0430\u0432\u043e\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0435\u0432\u043e F3<br \/>\ninsert_left(H,D,D1),<br \/>\ninsert_right(J,D1,D2),%&#187;\u0432 \u0448\u043a\u043e\u043b\u0443&#187; \u0441 \u043f\u043e\u0434\u0434\u0435\u0440\u0435\u0432\u044c\u044f\u043c\u0438 D2<br \/>\ninsert_right(E,B,B1),<br \/>\ninsert_left(D2,B1,B2),%\u043b\u0435\u0432\u043e\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0435\u0432\u043e<br \/>\ninsert_left(B2,A,A1),<br \/>\ninsert_right(F3,A1,A2),<br \/>\n%\u043a\u043e\u0440\u0435\u043d\u044c \u0434\u0435\u0440\u0435\u0432\u0430 A2<br \/>\nwrite(&#171;\u0414\u043e\u043b\u0436\u043d\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u0441\u044f:\\n&#187;),<br \/>\nwrite(&#171;\u042f || \u043f\u043e\u0448\u0435\u043b || \u043e\u0441\u0442\u0430\u043b\u0441\u044f || \u0432 \u0448\u043a\u043e\u043b\u0443 || \u0433\u0443\u043b\u044f\u0442\u044c || \u0434\u043e\u043c\u0430 || \u0443 \u0434\u0440\u0443\u0433\u0430 || \u0443\u0447\u0438\u043b\u0441\u044f || \u0437\u0430\u0441\u044b\u043f\u0430\u043b || \u0431\u043e\u043b\u0435\u043b || \u0440\u0430\u0437\u0432\u043b\u0435\u043a\u0430\u043b\u0441\u044f\\n&#187;),<br \/>\nwrite(&#171;\u041f\u043e\u043b\u0443\u0447\u0438\u043b\u043e\u0441\u044c:\\n&#187;),<\/p>\n<p>res(A2,1).<br \/>\n%obhodLVL(A2,Z,1).<br \/>\ngoal<br \/>\nrun.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>domains %\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u0442\u0438\u043f\u0430 \u0441\u043f\u0438\u0441\u043a\u0430 spisok=integer* predicates %\u0441\u043a\u043b\u0435\u0438\u0432\u0430\u043d\u0438\u0435 1\u0433\u043e \u0438 2\u0433\u043e \u0441\u043f\u0438\u0441\u043a\u043e\u0432 \u0432 3\u0439 skleivanie(spisok,spisok,spisok) %\u0444\u0443\u043d\u043a\u0446\u0438\u044f \u0441\u0447\u0438\u0442\u044b\u0432\u0430\u043d\u0438\u044f \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0433\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430 lastEl(spisok,spisok)<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[36],"tags":[],"_links":{"self":[{"href":"https:\/\/studentpmr.ru\/index.php?rest_route=\/wp\/v2\/posts\/23952"}],"collection":[{"href":"https:\/\/studentpmr.ru\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/studentpmr.ru\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/studentpmr.ru\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/studentpmr.ru\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=23952"}],"version-history":[{"count":1,"href":"https:\/\/studentpmr.ru\/index.php?rest_route=\/wp\/v2\/posts\/23952\/revisions"}],"predecessor-version":[{"id":23953,"href":"https:\/\/studentpmr.ru\/index.php?rest_route=\/wp\/v2\/posts\/23952\/revisions\/23953"}],"wp:attachment":[{"href":"https:\/\/studentpmr.ru\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=23952"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/studentpmr.ru\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=23952"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/studentpmr.ru\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=23952"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}