Ãëàâíàÿ Ïðîìûøëåííàÿ àâòîìàòèêà.

§

Ïðåäåëüíûå ïîëÿ âîçìîæíûõ õîäîâ

Ïðàäåëüÿíå ïîëÿ âîçìîæíûõ õîäå!

Äîïîëíåíèå 1,3à

Òàáëèöà áåëîé ïåøêè

Äîïîëíåíèå 1.36 Äîïîëíåíèå 1.3à

Òàáëèöà ÷åðíîé ïåøêè

Òàáëèöà áåëîé ïåøêè

Äîïîëíåíèå 1.36

Òàáëèöà ÷åðíîé ïåøêè

Ïîëÿ âîçìîæíûõ õîäîâ

Ïîëÿ âîçìîæíûõ õîäîâ

+ 16

+ 16

25 •



ïðîäîëæåíèå òàáëèöû áåëîé è ÷åðíîé ïåøåê

Ïîëÿ

âîçìîæíûõ

õîäîâ

Ïîëÿ âîçìîæíûõ õîäîâ

+ 16

Äîïîëíåíèå 2 ê àëãîðèòìó 50CJ

Ñëåäóþùèå îïåðàòîðû âñòàâëÿþòñÿ â ïðîãðàììó, íà÷èíàÿ ñ ìåòêè ÐÎÊÈÐÎÂÊÀ*. ÐÎÊÈÐÎÂÊÀ:

if ÑÂÎÈ ÏÎËß1!]=5 then go to ÐÎÊÈÐÎÂÊÀ ÁÅËÛÕ else if ÑÂÎÈ Ï0Ëß11]=61 then go to ÐÎÊÈÐÎÂÊÀ ×ÅÐÍÛÕ else go to ÊÎÍÅÖ ÐÎÊÈÐÎÂÊÈ; ÐÎÊÈÐÎÂÊÀ ÁÅËÛÕ: if "Ï ÊÎÐÎÒÊÀß ÐÎÊÈÐÎÂÊÀ ÁÅËÛÕ V ÄÎÑÊÀ ÁÅËÛÕ6]0\/

ÄÎÑÊÀ ÁÅËÛÕ1Ò7]0\/ÄÎÑÊÀ ×ÅÐÍÛÕ1[6]0\/

ÄÎÑÊÀ ×ÅÐÍÛÕ[7]0 then go to ÄËÈÍÍÀß ÁÅËÛÕ; for ï:=ÓÐÎÂÅÍÜ-2 step -2 until 1 do if HOMEPIn]==l V HOMEPn]=2 then

go to ÄËÈÍÍÀß ÁÅËÛÕ; ÄÎÑÊÀ ÁÅËÛÕ[6]:= ÄÎÑÊÀ ÁÅËÛÕ17]:=6;ï: = ñ;

ÎÁÇÎÐ ÕÎÄΠ(ÏÎËß ×ÅÐÍÛÕ,ÄÎÑÊÀ ×ÅÐÍÛÕ.ÄÎÑÊÀ ÁÅËÛÕ,ï,

ÍÅ ÂÎÇÌÎÆÍÀ ÊÎÐÎÒÊÀß ÁÅËÛÕ); ÂÎÇÌÎÆÍÀ ÊÎÐÎÒÊÀß ÁÅËÛÕ: ÕÎÄÛ ÐÎÊÈÐÎÂÊÈ (5,7,2,8,6); ÍÅ ÂÎÇÌÎÆÍÀ ÊÎÐÎÒÊÀß ÁÅËÛÕ:

ÄÎÑÊÀ ÁÅËÛÕ[6]:=Ä0ÑÊÀ ÁÅËÛÕ[7]:=0; ÄËÈÍÍÀß ÁÅËÛÕ: if Ï ÄËÈÍÍÀß ÐÎÊÈÐÎÂÊÀ ÁÅËÛÕÓ

ÄÎÑÊÀ ÁÅËÛÕ2]¥=0 V

ÄÎÑÊÀ ÁÅËÛÕ[3]¥=..0 V ÄÎÑÊÀ ÁÅËÛÕ4]¥=0 V ÄÎÑÊÀ ×ÅÐÍÛÕ[2]ò&0 V ÄÎÑÊÀ ×ÅÐÍÛÕ3]0 V ÄÎÑÊÀ ×ÅÐÍÛÕ{4]0 then go to ÊÎÍÅÖ ÐÎÊÈÐÎÂÊÈ; for ï: = ÓÐÎÂÅÍÜ-2 step -2 until 1 do if HOMEPiIn]= 1 V H0MEPM==3 then go to ÊÎÍÅÖ ÐÎÊÈÐÎÂÊÈ;

* Â íèæåñëåäóþùèõ îïåðàòîðàõ ðåäàêòîðîì âûïóñêà ñäåëàíû íåêîòîðûå òîæäåñòâåííûå ñîêðàùåíèÿ è âíåñåíû ïîïðàâêè, óêàçàííûå â íèæåñëåäóþùåì ñâèäåòåëüñòâå ê àëãîðèòìó 50CJ. {Ïðèì. ðåä.)



ÄÎÑÊÀ ÁÅËÛÕ[3]:=Ä0ÑÊÀ ÁÅËÛÕ[4]:=6; ï: = ñ; ÎÁÇÎÐ ÕÎÄΠ(ÏÎËß ×ÅÐÍÛÕ, ÄÎÑÊÀ ×ÅÐÍÛÕÄÎÑÊÀ ÁÅËÛÕ.ï,

ÍÅ ÂÎÇÌÎÆÍÀ ÄËÈÍÍÀß ÁÅËÛÕ); ÂÎÇÌÎÆÍÀ ÄËÈÍÍÀß ÁÅËÛÕ: ÕÎÄÛ ÐÎÊÈÐÎÂÊÈ (5,3,3,1,4); ÍÅ ÂÎÇÌÎÆÍÀ ÄËÈÍÍÀß ÁÅËÛÕ:

ÄÎÑÊÀ ÁÅËÛÕ[3]:= ÄÎÑÊÀ ÁÅËÛÕ4]:=0; go to ÊÎÍÅÖ ÐÎÊÈÐÎÂÊÈ; ÐÎÊÈÐÎÂÊÀ ×ÅÐÍÛÕ: if "~1 ÊÎÐÎÒÊÀß ÐÎÊÈÐÎÂÊÀ ×ÅÐÍÛÕ V ÄÎÑÊÀ 4EPHbIX[62]¥=0V ÄÎÑÊÀ ×ÅÐÍÛÕ[63]0\/ ÄÎÑÊÀ ÁÅËÛÕ[62]0 V ÄÎÑÊÀ ÁÅËÛÕ[63]0 then

go to ÄËÈÍÍÀß ×ÅÐÍÛÕ; for n:=ÓÐÎÂÅÍÜ-2 step -2 until 2 do

if HOMEP[n] = l V HOMEPi[n] = 2 then go to ÄËÈÍÍÀß ×ÅÐÍÛÕ; ÄÎÑÊÀ ×ÅÐÍÛÕ62]:=ÄÎÑÊÀ ×ÅÐÍÜÙ63]:=6; ï: = ñ; ÎÁÇÎÐ ÕÎÄΠ(ÏÎËß ÁÅËÛÕ,ÄÎÑÊÀ ÁÅËÛÕ,ÄÎÑÊÀ ×ÅÐÍÛÕ.ï, ÍÅ ÂÎÇÌÎÆÍÀ ÊÎÐÎÒÊÀß ×ÅÐÍÛÕ); ÂÎÇÌÎÆÍÀ ÊÎÐÎÒÊÀß ×ÅÐÍÛÕ: ÕÎÄÛ ÐÎÊÈÐÎÂÊÈ (61,63,2,64,62); ÍÅ ÂÎÇÌÎÆÍÀ ÊÎÐÎÒÊÀß ×ÅÐÍÛÕ:

ÄÎÑÊÀ ×ÅÐÍÛÕ162]:= ÄÎÑÊÀ ×ÅÐÍÛÕ163]:=0; ÄËÈÍÍÀß ×ÅÐÍÛÕ: if "ÏÄËÈÍÍÀß ÐÎÊÈÐÎÂÊÀ ×ÅÐÍÛÕ V ÄÎÑÊÀ 4EPHbIX[58]0V ÄÎÑÊÀ ×ÅÐÍÛÕ1[59]0 V ÄÎÑÊÀ ×ÅÐÍÛÕ[60]0 V ÄÎÑÊÀ ÁÅËÛÕ158]0 V ÄÎÑÊÀ ÁÅËÛÕ[59]0\/ ÄÎÑÊÀ ÁÅËÛÕ160}¥=0 then

go to ÊÎÍÅÖ ÐÎÊÈÐÎÂÊÈ; for n:=ÓÐÎÂÅÍÜ-2 step -2 until 2 do if HOMEPlFn]=l V H0MEPM=3 then go to ÊÎÍÅÖ ÐÎÊÈÐÎÂÊÈ; ÄÎÑÊÀ ×ÅÐÍÛÕ59]-=ÄÎÑÊÀ ×ÅÐÍÛÕ[60]:=6; ï:=ñ; ÎÁÇÎÐ ÕÎÄΠ(ÏÎËß ÁÅËÛÕ,ÄÎÑÊÀ ÁÅËÛÕ,ÄÎÑÊÀ ×ÅÐÍÛÕ,ï, ÍÅ ÂÎÇÌÎÆÍÀ ÄËÈÍÍÀß ×ÅÐÍÛÕ); ÂÎÇÌÎÆÍÀ ÄËÈÍÍÀß ×ÅÐÍÛÕ:ÕÎÄÛ ÐÎÊÈÐÎÂÊÈ (61,59,3,57,66); ÍÅ ÂÎÇÌÎÆÍÀ ÄËÈÍÍÀß ×ÅÐÍÛÕ:

ÄÎÑÊÀ ×ÅÐÍÛÕ59]:= ÄÎÑÊÀ ×ÅÐÍÛÕ160]:=0; ÊÎÍÅÖ ÐÎÊÈÐÎÂÊÈ:

Íèæåñëåäóþùåå îïèñàíèå ïðîöåäóðû ïîìåùàåòñÿ â ïðîãðàììó íà ìåñòî ïóñãîé ïðîöåäóðû ÕÎÄÛ ÐÎÊÈÐÎÂÊÈ.

procedure ÕÎÄÛ ÐÎÊÈÐÎÂÊÈ(ÊÐ1,ÊÐ2,Í0ÌÅÐ ËÀÄÜÈ,Ë1,Ë2);

integer ÊÐ1,ÊÐ2,Í0ÌÅÐ ËÀÄÜÈ,Ë1,Ë2; begin ÑÏÈÑ0Ê[ñ]: = 1; ÑÏÈÑÎÊ[ñ+1]:==6;

ÑÏÈÑ0Ê[ñ+2]: = ÊÐ 1; ÑÏÈÑÎÙñ+3]: = -ÊÐ2;

ÑÏÈÑ0Ùñ+4]:=ÍÎÌÅÐ ËÀÄÜÈ; ÑÏÈÑÎÊ[ñ+5];=4;

ÑÏÈÑ0Ê1[ñ+6]:=Ë1; ÑÏÈÑÎÊ[ñ+7]:=Ë2;

ÑÏÈÑÎÙñ+8]: =-Ë1; ÑÏÈÑÎÊ[ñ+9]: = 1;





0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 [34] 35 36 37 38 39 40 41 42 43

0.0019