黑王子 发表于 2006-4-11 07:34:53

二阶魔方状态的计算程序

<P>       本人将陆续将自己所编数据库源程序贴出, 供大家交流和研究. 由于时间和能力有限, 其中必然存在的许多不足之处, 希望各位爱好者给予指正.</P>
<P>       本人所编程序运行时间偏长, 希望各位爱好者能找到更快、更好的方法!</P>
<P>       多谢合作!</P>
[此贴子已经被作者于2006-4-11 19:59:36编辑过]

黑王子 发表于 2006-4-11 07:41:18

文件名称: Cube2_V10.PRG

<P>文件名称: Cube2_V10.PRG[本人自机运行时长约80分钟,可获得二阶魔方的所有状态及最小步数等]</P>
<P>******************************************************************<br>*  文件名称: Cube2_V10.PRG                                       *<br>*  编程载体: Visual Foxpro 7.0                                   *<br>*  编程日期: 2006.02.08                                          *<br>*  程 序 员: 黑王子                                              * <br>*  主要功能: 计算并确认二阶魔方的最远状态                        * <br>******************************************************************<br>SET TALK OFF<br>SET SAFETY OFF<br>SET PRIN ON<br>SET DEVICE TO PRINT<br>SET PRINT TO file Cube2_V10.SDF <br>CLOSE ALL DATA<br>CLEAR<br>KI=1<br>TIME0=TIME()<br>?SPACE(10)+"二阶魔方最远状态计算程序"+SPACE(8)+"编制者: 黑王子 2006.02.08"<br>?<br>?SPACE(5)+TIME()+"  下级转动库的建立"<br>Cube2="ABCDEFGHJKLMNPQRSWXYZ"<br>SELECT 0<br>USE DB2_00D<br>DELETE ALL<br>PACK<br>COPY TO DB2_01X<br>COPY TO DB2_01Y<br>COPY TO DB2_01Z<br>COPY TO DB2_01D<br>COPY TO DB2_02X<br>COPY TO DB2_02Y<br>COPY TO DB2_02Z<br>APPEND BLANK<br>REPLACE A2 with Cube2<br>REPLACE A3 with "0"<br>REPLACE A4 with 0<br>IF KI=1<br>T=Cube2<br>U11=subs(T,1,1)+SUBS(T,5,2)+SUBS(T,4,1)+SUBS(T,12,2)+SUBS(T,7,5)+SUBS(T,14,2)+SUBS(T,2,2)+SUBS(T,16,2)+SUBS(T,21,1)+SUBS(T,18,3)<br>U12=subs(T,1,1)+subs(T,12,2)+subs(T,4,1)+subs(T,14,2)+subs(T,7,5)+subs(T,2,2)+subs(T,5,2)+subs(T,16,2)+subs(T,20,2)+subs(T,18,2)<br>U13=subs(T,1,1)+subs(T,14,2)+subs(T,4,1)+subs(T,2,2)++subs(T,7,5)++subs(T,5,2)++subs(T,12,2)++subs(T,16,2)++subs(T,19,3)+subs(T,18,1)<br>U14=subs(T,20,2)+subs(T,3,4)+subs(T,1,2)+subs(T,9,1)+subs(T,8,1)+subs(T,11,2)+subs(T,7,1)+subs(T,17,1)+subs(T,14,3)+subs(T,18,2)+subs(T,13,1)+subs(T,10,1)<br>U15=subs(T,13,1)+subs(T,10,1)+subs(T,3,4)+subs(T,20,2)+subs(T,9,1)+subs(T,2,1)+subs(T,11,2)+subs(T,1,1)+subs(T,16,2)+subs(T,14,2)+subs(T,18,2)+subs(T,7,2)<br>U16=subs(T,7,2)+subs(T,3,4)+subs(T,13,1)+subs(T,10,1)+SUBSTR(T,9,1)+subs(T,21,1)+subs(T,11,2)+subs(T,20,1)+subs(T,15,3)+subs(T,14,1)+subs(T,18,2)+subs(T,1,2)<br>U17=subs(T,1,3)+subs(T,7,1)+subs(T,5,1)+subs(T,9,1)+subs(T,14,1)+subs(T,8,1)+subs(T,17,1)+subs(T,13,1)+subs(T,10,3)+subs(T,18,1)+subs(T,15,2)+subs(T,21,1)+subs(T,4,1)+subs(T,19,2)+subs(T,6,1)<br>U18=subs(T,1,3)+subs(T,14,1)+subs(T,5,1)+subs(T,17,2)+subs(T,8,1)+subs(T,21,1)+subs(T,12,2)+subs(T,10,2)+subs(T,4,1)+subs(T,15,2)+subs(T,6,2)+subs(T,19,2)+subs(T,9,1)<br>U19=subs(T,1,3)+subs(T,18,1)+subs(T,5,1)+subs(T,21,1)+subs(T,4,1)+subs(T,8,1)+subs(T,6,1)+subs(T,11,3)+subs(T,10,1)+subs(T,7,1)+subs(T,15,2)+subs(T,9,1)+subs(T,14,1)+subs(T,19,2)+subs(T,17,1)<br>USE DB2_01X<br>DELETE ALL<br>PACK<br>APPEND BLANK<br>REPLACE A2 with U11<br>REPLACE A3 with "1"<br>APPEND BLANK<br>REPLACE A2 with U12<br>REPLACE A3 with "2"<br>APPEND BLANK<br>REPLACE A2 with U13<br>REPLACE A3 with "3"<br>REPLACE ALL A4 with 1<br>USE DB2_01Y<br>DELETE ALL<br>PACK<br>APPEND BLANK<br>REPLACE A2 with U14<br>REPLACE A3 with "4"<br>APPEND BLANK<br>REPLACE A2 with U15<br>REPLACE A3 with "5"<br>APPEND BLANK<br>REPLACE A2 with U16<br>REPLACE A3 with "6"<br>REPLACE ALL A4 with 1<br>USE DB2_01Z<br>DELETE ALL<br>PACK<br>APPEND BLANK<br>REPLACE A2 with U17<br>REPLACE A3 with "7"<br>APPEND BLANK<br>REPLACE A2 with U18<br>REPLACE A3 with "8"<br>APPEND BLANK<br>REPLACE A2 with U19<br>REPLACE A3 with "9"<br>REPLACE ALL A4 with 1<br>USE DB2_01D<br>APPEND FROM DB2_01X<br>APPEND FROM DB2_01Y<br>APPEND FROM DB2_01Z<br>ENDIF<br>FOR KI=2 TO 12<br>?SPACE(15)+"DB2_02X.DBF的建立"<br>?SPACE(15)+"DB2_02Y.DBF的建立"<br>?SPACE(15)+"DB2_02Z.DBF的建立"<br>SELECT 1<br>USE DB2_02X<br>DELETE ALL<br>PACK<br>SELECT 4<br>USE DB2_02Y<br>DELETE ALL<br>PACK<br>SELECT 7<br>USE DB2_02Z<br>DELETE ALL<br>PACK<br>TIME1=TIME()<br>?SPACE(5)+TIME1+"  本级转动库的管理"<br>SELECT 2<br>USE DB2_01X<br>COUNT TO V2<br>SELECT 5<br>USE DB2_01Y<br>COUNT TO V5<br>SELECT 8<br>USE DB2_01Z<br>COUNT TO V8<br>?SPACE(15)+"DB2_01X.DBF的数据"+SPACE(25)+LTRIM(STR(V2))<br>?SPACE(15)+"DB2_01Y.DBF的数据"+SPACE(25)+LTRIM(STR(V5))<br>?SPACE(15)+"DB2_01Z.DBF的数据"+SPACE(25)+LTRIM(STR(V8))<br>TIME1=TIME()<br>?SPACE(5)+TIME1+"  本级转动库的处理"<br>SELECT 2<br>COPY TO DB2_U14<br>COPY TO DB2_U15<br>COPY TO DB2_U16<br>COPY TO DB2_U17<br>COPY TO DB2_U18<br>COPY TO DB2_U19<br>?SPACE(15)+"DB2_01X.DBF的分库已经生成"<br>??SPACE(50)<br>??TIME()<br>USE DB2_U14<br>REPLACE ALL A2 WITH subs(A2,20,2)+subs(A2,3,4)+subs(A2,1,2)+subs(A2,9,1)+subs(A2,8,1)+subs(A2,11,2)+subs(A2,7,1)+subs(A2,17,1)+subs(A2,14,3)+subs(A2,18,2)+subs(A2,13,1)+subs(A2,10,1)<br>REPLACE ALL A3 WITH SUBSTR(A3,1,KI-1)+"4"<br>REPLACE ALL A4 WITH KI<br>USE DB2_U15<br>REPLACE ALL A2 WITH subs(A2,13,1)+subs(A2,10,1)+subs(A2,3,4)+subs(A2,20,2)+subs(A2,9,1)+subs(A2,2,1)+subs(A2,11,2)+subs(A2,1,1)+subs(A2,16,2)+subs(A2,14,2)+subs(A2,18,2)+subs(A2,7,2)<br>REPLACE ALL A3 WITH SUBSTR(A3,1,KI-1)+"5"<br>REPLACE ALL A4 WITH KI<br>USE DB2_U16<br>REPLACE ALL A2 WITH subs(A2,7,2)+subs(A2,3,4)+subs(A2,13,1)+subs(A2,10,1)+SUBS(A2,9,1)+subs(A2,21,1)+subs(A2,11,2)+subs(A2,20,1)+subs(A2,15,3)+subs(A2,14,1)+subs(A2,18,2)+subs(A2,1,2)<br>REPLACE ALL A3 WITH SUBSTR(A3,1,KI-1)+"6"<br>REPLACE ALL A4 WITH KI<br>USE DB2_U17<br>REPLACE ALL A2 WITH subs(A2,1,3)+subs(A2,7,1)+subs(A2,5,1)+subs(A2,9,1)+subs(A2,14,1)+subs(A2,8,1)+subs(A2,17,1)+subs(A2,13,1)+subs(A2,10,3)+subs(A2,18,1)+subs(A2,15,2)+subs(A2,21,1)+subs(A2,4,1)+subs(A2,19,2)+subs(A2,6,1)<br>REPLACE ALL A3 WITH SUBSTR(A3,1,KI-1)+"7"<br>REPLACE ALL A4 WITH KI<br>USE DB2_U18<br>REPLACE ALL A2 WITH subs(A2,1,3)+subs(A2,14,1)+subs(A2,5,1)+subs(A2,17,2)+subs(A2,8,1)+subs(A2,21,1)+subs(A2,12,2)+subs(A2,10,2)+subs(A2,4,1)+subs(A2,15,2)+subs(A2,6,2)+subs(A2,19,2)+subs(A2,9,1)<br>REPLACE ALL A3 WITH SUBSTR(A3,1,KI-1)+"8"<br>REPLACE ALL A4 WITH KI<br>USE DB2_U19<br>REPLACE ALL A2 WITH subs(A2,1,3)+subs(A2,18,1)+subs(A2,5,1)+subs(A2,21,1)+subs(A2,4,1)+subs(A2,8,1)+subs(A2,6,1)+subs(A2,11,3)+subs(A2,10,1)+subs(A2,7,1)+subs(A2,15,2)+subs(A2,9,1)+subs(A2,14,1)+subs(A2,19,2)+subs(A2,17,1)<br>REPLACE ALL A3 WITH SUBSTR(A3,1,KI-1)+"9"<br>REPLACE ALL A4 WITH KI<br>USE<br>?SPACE(15)+" DB2_01X.DBF 中间库数据流向完成"<br>??SPACE(44)<br>??TIME()<br>SELECT 4<br>APPEND FROM DB2_U14<br>APPEND FROM DB2_U15<br>APPEND FROM DB2_U16<br>?SPACE(15)+"向 DB2_02Y.DBF 添加数据已经完成  "+STR(3*V2)<br>??SPACE(32)<br>??TIME()<br>SELECT 7<br>APPEND FROM DB2_U17<br>APPEND FROM DB2_U18<br>APPEND FROM DB2_U19<br>?SPACE(15)+"向 DB2_02Z.DBF 添加数据已经完成  "+STR(3*V2)<br>??SPACE(32)<br>??TIME()<br>SELECT 5<br>COPY TO DB2_U11<br>COPY TO DB2_U12<br>COPY TO DB2_U13<br>COPY TO DB2_U17<br>COPY TO DB2_U18<br>COPY TO DB2_U19<br>?SPACE(15)+"DB2_01Y.DBF的分库已经生成"<br>??SPACE(50)<br>??TIME()<br>USE DB2_U11<br>REPLACE ALL A2 WITH subs(A2,1,1)+subs(A2,5,2)+subs(A2,4,1)+subs(A2,12,2)+subs(A2,7,5)+subs(A2,14,2)+subs(A2,2,2)+subs(A2,16,2)+subs(A2,21,1)+subs(A2,18,3)<br>REPLACE ALL A3 WITH SUBSTR(A3,1,KI-1)+"1"<br>REPLACE ALL A4 WITH KI<br>USE DB2_U12<br>REPLACE ALL A2 WITH subs(A2,1,1)+subs(A2,12,2)+subs(A2,4,1)+subs(A2,14,2)+subs(A2,7,5)+subs(A2,2,2)+subs(A2,5,2)+subs(A2,16,2)+subs(A2,20,2)+subs(A2,18,2)<br>REPLACE ALL A3 WITH SUBSTR(A3,1,KI-1)+"2"<br>REPLACE ALL A4 WITH KI<br>USE DB2_U13<br>REPLACE ALL A2 WITH subs(A2,1,1)+subs(A2,14,2)+subs(A2,4,1)+subs(A2,2,2)++subs(A2,7,5)++subs(A2,5,2)++subs(A2,12,2)++subs(A2,16,2)++subs(A2,19,3)+subs(A2,18,1)<br>REPLACE ALL A3 WITH SUBSTR(A3,1,KI-1)+"3"<br>REPLACE ALL A4 WITH KI<br>USE DB2_U17<br>REPLACE ALL A2 WITH subs(A2,1,3)+subs(A2,7,1)+subs(A2,5,1)+subs(A2,9,1)+subs(A2,14,1)+subs(A2,8,1)+subs(A2,17,1)+subs(A2,13,1)+subs(A2,10,3)+subs(A2,18,1)+subs(A2,15,2)+subs(A2,21,1)+subs(A2,4,1)+subs(A2,19,2)+subs(A2,6,1)<br>REPLACE ALL A3 WITH SUBSTR(A3,1,KI-1)+"7"<br>REPLACE ALL A4 WITH KI<br>USE DB2_U18<br>REPLACE ALL A2 WITH subs(A2,1,3)+subs(A2,14,1)+subs(A2,5,1)+subs(A2,17,2)+subs(A2,8,1)+subs(A2,21,1)+subs(A2,12,2)+subs(A2,10,2)+subs(A2,4,1)+subs(A2,15,2)+subs(A2,6,2)+subs(A2,19,2)+subs(A2,9,1)<br>REPLACE ALL A3 WITH SUBSTR(A3,1,KI-1)+"8"<br>REPLACE ALL A4 WITH KI<br>USE DB2_U19<br>REPLACE ALL A2 WITH subs(A2,1,3)+subs(A2,18,1)+subs(A2,5,1)+subs(A2,21,1)+subs(A2,4,1)+subs(A2,8,1)+subs(A2,6,1)+subs(A2,11,3)+subs(A2,10,1)+subs(A2,7,1)+subs(A2,15,2)+subs(A2,9,1)+subs(A2,14,1)+subs(A2,19,2)+subs(A2,17,1)<br>REPLACE ALL A3 WITH SUBSTR(A3,1,KI-1)+"9"<br>REPLACE ALL A4 WITH KI<br>USE<br>?SPACE(15)+" DB2_01Y.DBF 中间库数据流向完成"<br>??SPACE(44)<br>??TIME()<br>SELECT 1<br>APPEND FROM DB2_U11<br>APPEND FROM DB2_U12<br>APPEND FROM DB2_U13<br>?SPACE(15)+"向 DB2_02X.DBF 添加数据已经完成  "+STR(3*V5)<br>??SPACE(32)<br>??TIME()<br>SELECT 7<br>APPEND FROM DB2_U17<br>APPEND FROM DB2_U18<br>APPEND FROM DB2_U19<br>?SPACE(15)+"向 DB2_02Z.DBF 添加数据已经完成  "+STR(3*V5)<br>??SPACE(32)<br>??TIME()</P>
<P>SELECT 8<br>COPY TO DB2_U11<br>COPY TO DB2_U12<br>COPY TO DB2_U13<br>COPY TO DB2_U14<br>COPY TO DB2_U15<br>COPY TO DB2_U16<br>?SPACE(15)+"DB2_01Z.DBF的分库已经生成"<br>??SPACE(50)<br>??TIME()<br>USE DB2_U11<br>REPLACE ALL A2 WITH subs(A2,1,1)+subs(A2,5,2)+subs(A2,4,1)+subs(A2,12,2)+subs(A2,7,5)+subs(A2,14,2)+subs(A2,2,2)+subs(A2,16,2)+subs(A2,21,1)+subs(A2,18,3)<br>REPLACE ALL A3 WITH SUBSTR(A3,1,KI-1)+"1"<br>REPLACE ALL A4 WITH KI<br>USE DB2_U12<br>REPLACE ALL A2 WITH subs(A2,1,1)+subs(A2,12,2)+subs(A2,4,1)+subs(A2,14,2)+subs(A2,7,5)+subs(A2,2,2)+subs(A2,5,2)+subs(A2,16,2)+subs(A2,20,2)+subs(A2,18,2)<br>REPLACE ALL A3 WITH SUBSTR(A3,1,KI-1)+"2"<br>REPLACE ALL A4 WITH KI<br>USE DB2_U13<br>REPLACE ALL A2 WITH subs(A2,1,1)+subs(A2,14,2)+subs(A2,4,1)+subs(A2,2,2)++subs(A2,7,5)++subs(A2,5,2)++subs(A2,12,2)++subs(A2,16,2)++subs(A2,19,3)+subs(A2,18,1)<br>REPLACE ALL A3 WITH SUBSTR(A3,1,KI-1)+"3"<br>REPLACE ALL A4 WITH KI</P>
<P>USE DB2_U14<br>REPLACE ALL A2 WITH subs(A2,20,2)+subs(A2,3,4)+subs(A2,1,2)+subs(A2,9,1)+subs(A2,8,1)+subs(A2,11,2)+subs(A2,7,1)+subs(A2,17,1)+subs(A2,14,3)+subs(A2,18,2)+subs(A2,13,1)+subs(A2,10,1)<br>REPLACE ALL A3 WITH SUBSTR(A3,1,KI-1)+"4"<br>REPLACE ALL A4 WITH KI<br>USE DB2_U15<br>REPLACE ALL A2 WITH subs(A2,13,1)+subs(A2,10,1)+subs(A2,3,4)+subs(A2,20,2)+subs(A2,9,1)+subs(A2,2,1)+subs(A2,11,2)+subs(A2,1,1)+subs(A2,16,2)+subs(A2,14,2)+subs(A2,18,2)+subs(A2,7,2)<br>REPLACE ALL A3 WITH SUBSTR(A3,1,KI-1)+"5"<br>REPLACE ALL A4 WITH KI<br>USE DB2_U16<br>REPLACE ALL A2 WITH subs(A2,7,2)+subs(A2,3,4)+subs(A2,13,1)+subs(A2,10,1)+SUBS(A2,9,1)+subs(A2,21,1)+subs(A2,11,2)+subs(A2,20,1)+subs(A2,15,3)+subs(A2,14,1)+subs(A2,18,2)+subs(A2,1,2)<br>REPLACE ALL A3 WITH SUBSTR(A3,1,KI-1)+"6"<br>REPLACE ALL A4 WITH KI<br>USE<br>?SPACE(15)+" DB2_01Z.DBF 中间库数据流向完成"<br>??SPACE(44)<br>??TIME()<br>SELECT 1<br>APPEND FROM DB2_U11<br>APPEND FROM DB2_U12<br>APPEND FROM DB2_U13<br>?SPACE(15)+"向 DB2_02X.DBF 添加数据已经完成  "+STR(3*V8)<br>??SPACE(32)<br>??TIME()<br>SELECT 4<br>APPEND FROM DB2_U14<br>APPEND FROM DB2_U15<br>APPEND FROM DB2_U16<br>?SPACE(15)+"向 DB2_02Y.DBF 添加数据已经完成  "+STR(3*V8)<br>??SPACE(32)<br>??TIME()<br>?SPACE(5)+TIME()+"  下级转动库的整理"+TIME()<br>SELECT 1<br>COUNT to HV10<br>APPEND FROM DB2_00<br>FOR I0=1 TO KI-1<br>File1="DB2_"+SUBSTR(LTRIM(STR(100+I0)),2,2)+"D.DBF"<br>APPEND FROM &amp;File1<br>NEXT I0 <br>SORT TO DB2_01E ON A2,A4<br>USE DB2_01E<br>COUNT to V10<br>GO TOP<br>T1=A2<br>FOR I1=2 to V10<br>GO I1<br>IF A2=T1<br>DELETE<br>ELSE<br>T1=A2<br>ENDI<br>NEXT I1<br>DELETE ALL FOR A4&lt;KI<br>PACK<br>File2=".\过程库\DB2_"+SUBS(LTRI(STR(100+KI)),2,2)+"X.DBF"<br>COPY TO &amp;File2<br>COPY TO DB2_01X<br>USE<br>SELECT 2<br>USE DB2_01X<br>COUNT to HV1<br>?SPACE(15)+" DB2_02X.DBF 的整理前"+STR(HV10)+"  整理后 "+STR(HV1)+"   排除量 "+STR(HV10-HV1)+SPACE(5)+TIME()</P>
<P>SELECT 4<br>COUNT to HV40<br>APPEND FROM DB2_00<br>FOR I0=1 TO KI-1<br>File1="DB2_"+SUBSTR(LTRIM(STR(100+I0)),2,2)+"D.DBF"<br>APPEND FROM &amp;File1<br>NEXT I0 <br>SORT TO DB2_01E ON A2,A4<br>USE DB2_01E<br>COUNT to V40<br>GO TOP<br>T1=A2<br>FOR I1=2 to V40<br>GO I1<br>IF A2=T1<br>DELETE<br>ELSE<br>T1=A2<br>ENDI<br>NEXT I1<br>DELETE ALL FOR A4&lt;KI<br>PACK<br>File2=".\过程库\DB2_"+SUBS(LTRI(STR(100+KI)),2,2)+"Y.DBF"<br>COPY TO &amp;File2<br>COPY TO DB2_01Y<br>USE<br>SELECT 5<br>USE DB2_01Y<br>COUNT to HV4<br>?SPACE(15)+" DB2_02Y.DBF 的整理前"+STR(HV40)+"  整理后 "+STR(HV4)+"   排除量 "+STR(HV40-HV4)+SPACE(5)+TIME()</P>
<P>SELECT 7<br>COUNT to HV70<br>APPEND FROM DB2_00<br>FOR I0=1 TO KI-1<br>File1="DB2_"+SUBSTR(LTRIM(STR(100+I0)),2,2)+"D.DBF"<br>APPEND FROM &amp;File1<br>NEXT I0 <br>SORT TO DB2_01E ON A2,A4<br>USE DB2_01E<br>COUNT to V70<br>GO TOP<br>T1=A2<br>FOR I1=2 to V70<br>GO I1<br>IF A2=T1<br>DELETE<br>ELSE<br>T1=A2<br>ENDI<br>NEXT I1<br>DELETE ALL FOR A4&lt;KI<br>PACK<br>File2=".\过程库\DB2_"+SUBS(LTRI(STR(100+KI)),2,2)+"Z.DBF"<br>COPY TO &amp;File2<br>COPY TO DB2_01Z<br>USE<br>SELECT 8<br>USE DB2_01Z<br>COUNT to HV7<br>?SPACE(15)+" DB2_02Z.DBF 的整理前"+STR(HV70)+"  整理后 "+STR(HV7)+"   排除量 "+STR(HV70-HV7)+SPACE(5)+TIME()</P>
<P>?SPACE(5)+TIME()+"  样本库的整理"<br>SELECT 10<br>USE DB2_01D<br>File1="DB2_"+SUBSTR(LTRIM(STR(100+KI)),2,2)+"D.DBF"<br>COPY TO DB2_01F<br>USE DB2_01F<br>DELETE ALL<br>PACK<br>APPE FROM DB2_01X<br>APPE FROM DB2_01Y<br>APPE FROM DB2_01Z<br>SORT TO DB2_01E ON A2,A4<br>USE DB2_01E<br>COUNT to V100<br>GO TOP<br>T1=A2<br>FOR I1=2 to V100<br>GO I1<br>IF A2=T1<br>DELETE<br>ELSE<br>T1=A2<br>ENDI<br>NEXT I1<br>PACK<br>COPY TO &amp;File1</P>
<P>?SPACE(5)+TIME()+"  样本库的显示"<br>?SPACE(15)+"完成态"<br>??SPACE(9)<br>??"1"<br>TT=1<br>FOR I2=1 TO KI<br>File1="DB2_"+SUBSTR(LTRIM(STR(100+I2)),2,2)+"D.DBF"<br>USE &amp;File1<br>COUNT TO V01<br>?SPACE(15)+"第"+SUBS((LTRIM(STR(100+I2))),2,2)+"步"<br>??V01<br>TT=TT+V01<br>NEXT I2<br>IF KI&lt;11<br>?SPACE(15)+"合  计"<br>ELSE<br>?SPACE(15)+"总  计"<br>ENDI<br>??SPACE(10-LEN(LTRIM(STR(TT))))<br>??LTRIM(STR(TT))<br>?<br>TIME0=TIME()<br>?SPAC(10)+"状态库的归类"+SPAC(8)+TIME()<br>file1='DB2_'+SUBSTR(ALLTRIM(STR(100+KI)),2,2)+'D.DBF'<br>USE &amp;file1<br>REPL ALL L1 with 0<br>REPL ALL L2 with 0<br>REPL ALL L3 with 0<br>REPL ALL L4 with 0<br>REPL ALL L5 with 0<br>REPL ALL L6 with 0<br>REPL ALL L1 with 1 FOR "A"$SUBS(A2,1,3)=.T. .and. "B"$SUBS(A2,1,3)=.T. .and. "C"$SUBS(A2,1,3)=.T.<br>?"L1计算已经完成"+SPAC(8)+TIME()<br>REPL ALL L2 with 1 FOR "D"$SUBS(A2,4,3)=.T. .and. "E"$SUBS(A2,4,3)=.T. .and. "F"$SUBS(A2,4,3)=.T.<br>?"L2计算已经完成"+SPAC(8)+TIME()<br>REPL ALL L3 with 1 FOR "G"$SUBS(A2,7,3)=.T. .and. "H"$SUBS(A2,7,3)=.T. .and. "J"$SUBS(A2,7,3)=.T.<br>?"L3计算已经完成"+SPAC(8)+TIME()<br>REPL ALL L4 with 1 FOR "K"$SUBS(A2,10,4)=.T. .and. "L"$SUBS(A2,10,4)=.T. .and. "M"$SUBS(A2,10,4)=.T. .and. "N"$SUBS(A2,10,4)=.T.<br>REPL ALL L4 with 1 FOR "P"$SUBS(A2,10,4)=.T. .and. "Q"$SUBS(A2,10,4)=.T. .and. "R"$SUBS(A2,10,4)=.T. .and. "S"$SUBS(A2,10,4)=.T.<br>REPL ALL L4 with 1 FOR "W"$SUBS(A2,10,4)=.T. .and. "X"$SUBS(A2,10,4)=.T. .and. "Y"$SUBS(A2,10,4)=.T. .and. "Z"$SUBS(A2,10,4)=.T.<br>?"L4计算已经完成"+SPAC(8)+TIME()<br>REPL ALL L5 with 1 FOR "K"$SUBS(A2,14,4)=.T. .and. "L"$SUBS(A2,14,4)=.T. .and. "M"$SUBS(A2,14,4)=.T. .and. "N"$SUBS(A2,14,4)=.T.<br>REPL ALL L5 with 1 FOR "P"$SUBS(A2,14,4)=.T. .and. "Q"$SUBS(A2,14,4)=.T. .and. "R"$SUBS(A2,14,4)=.T. .and. "S"$SUBS(A2,14,4)=.T.<br>REPL ALL L5 with 1 FOR "W"$SUBS(A2,14,4)=.T. .and. "X"$SUBS(A2,14,4)=.T. .and. "Y"$SUBS(A2,14,4)=.T. .and. "Z"$SUBS(A2,14,4)=.T.<br>?"L5计算已经完成"+SPAC(8)+TIME()<br>REPL ALL L6 with 1 FOR "K"$SUBS(A2,18,4)=.T. .and. "L"$SUBS(A2,18,4)=.T. .and. "M"$SUBS(A2,18,4)=.T. .and. "N"$SUBS(A2,18,4)=.T.<br>REPL ALL L6 with 1 FOR "P"$SUBS(A2,18,4)=.T. .and. "Q"$SUBS(A2,18,4)=.T. .and. "R"$SUBS(A2,18,4)=.T. .and. "S"$SUBS(A2,18,4)=.T.<br>REPL ALL L6 with 1 FOR "W"$SUBS(A2,18,4)=.T. .and. "X"$SUBS(A2,18,4)=.T. .and. "Y"$SUBS(A2,18,4)=.T. .and. "Z"$SUBS(A2,18,4)=.T.<br>?"L6计算已经完成"+SPAC(8)+TIME()<br>REPL ALL A5 with L1+L2+L3+L4+L5+L6<br>?"A5计算已经完成"<br>?<br>?SPACE(12)+"开始时间"+SPACE(8)+TIME0<br>?SPACE(12)+"结束时间"+SPACE(8)+TIME()<br>?SPACE(10)+"-----------------------------"<br>?SPACE(12)+"使用时间"+SPACE(8)<br>NEXT KI<br>SET PRINTER OFF  <br>SET PRINTER TO <br>SET DEVICE TO SCREEN<br>CLOSE ALL DATA<br>SET SAFETY ON<br>SET TALK OFF<br>RETURN<br></P>
[此贴子已经被作者于2006-4-11 20:36:33编辑过]

黑王子 发表于 2006-4-11 07:48:46

文件名称: DB2_00D.DBF

<P>[基本数据库DB2_00D.DBF信息资料,运行Cube2_V10.PRG程序前建立]</P>
<P><br>表结构:                       E:\二阶魔方\DB2_00D.DBF<br>数据记录数:                   1       <br>最近更新的时间:               04/11/06<br>代码页:                       936     <br>  Field   字段名                  类型                             宽度<br>      1   A1                      字符型                              2<br>      2   A2                      字符型                             21<br>      3   A3                      字符型                             11<br>      4   A4                      数值型                              2<br>      5   A5                      数值型                              1<br>      6   L1                      数值型                              1<br>      7   L2                      数值型                              1<br>      8   L3                      数值型                              1<br>      9   L4                      数值型                              1<br>     10   L5                      数值型                              1<br>     11   L6                      数值型                              1<br>** 总计 **                                                           44</P>
<P><br>   记录号  A1  A2                              A3                A4  A5  L1  L2  L3  L4  L5  L6<br>        1      ABCDEFGHJKLMNPQRSWXYZ           0                  0                            <br></P><br>
[此贴子已经被作者于2006-4-11 19:57:04编辑过]

ggglgq 发表于 2006-4-27 12:45:33

  <BR>    不错, SORT、DELETE、PACK 等语句加快了程序的进程!  加精了!<BR>  

ggglgq 发表于 2006-4-27 12:45:53

  <BR>    我准备利用 五一 黄金周 开发出快速求解程序!<BR>   

ggglgq 发表于 2006-5-7 19:35:14

<P>  <IMG src="http://bbs.mf8-china.com/data/attachment/forum/dvbbs/2006-5/20065719291661635.png" border=0><BR>    <a href="http://bbs.mf8-china.com/data/attachment/forum/dvbbs/2006-5/20065719274976097.rar" target="_blank" ><FONT color=#0000ff>正六面体二阶魔方-48“同态”图解</FONT></A>,提供公式 <FONT color=#ff0000>键盘输入</FONT> 和 <FONT color=#ff0000>鼠标输入</FONT> 两模式。</P>
<P>    注: n 号位置<FONT color=#0000ff>镜像</FONT> 是指: n 号位置为“后左上 0 位置”的“<FONT color=#0000ff>左右(对称)镜像</FONT>”。</P>
<P>    附件:<a href="http://bbs.mf8-china.com/data/attachment/forum/dvbbs/2006-5/20065719274976097.rar" target="_blank" ><FONT color=#3300ff>调色工具</FONT></A>,为大家配置自己喜欢的面块颜色。<BR>  </P>

ggglgq 发表于 2006-5-7 19:48:42

<DIV class=quote><B>以下是引用<I>ggglgq</I>在2006-4-27 12:45:53的发言:</B><BR>  <BR>    我准备利用 五一 黄金周 开发出快速求解程序!<BR>   </DIV>
<P>  <BR>    <a href="http://bbs.mf8-china.com/data/attachment/forum/dvbbs/2006-5/20065719382229930.rar" target="_blank" ><FONT color=#0000ff>正六面体二阶魔方最远状态开解程序</FONT></A><BR>  <BR>    虽然 五一 长假,但家务杂事颇多,暂时提供一个简易程序,容日后完善。
<P>    本程序 开解 时间: 赛扬 800 约六分钟   P4 系列计算机 约三分钟 <BR>    <BR>    开发环境:用速度较慢的 VB 6.0 研发测试
<P>    请大家先暂时凑合着使用 <a href="http://bbs.mf8-china.com/data/attachment/forum/dvbbs/2006-5/20065719382229930.rar" target="_blank" ><FONT color=#0000ff>本软件</FONT></A>。<BR>  <BR></P>

ggglgq 发表于 2006-5-7 20:31:30

  <BR>    注:上面的程序是在 正六面体二阶魔方-<FONT color=#ff0000>48“同态”</FONT> 的基础上进行的,每<FONT color=#0000ff>一态</FONT>均代表 <BR><FONT color=#ff0000>48“同态”</FONT>!   (希望大家不要产生误解!)<BR>  <BR>

ggglgq 发表于 2006-5-12 16:13:34

  <BR>    <a href="http://bbs.mf8-china.com/data/attachment/forum/dvbbs/2006-5/200651216101784346.rar" target="_blank" ><FONT color=#0000ff>正六面体二阶魔方最远状态开解程序</FONT></A><BR>    <BR>    版本升级 1.1 ,优化了 算法 ,在 P4 系列计算机 开解 约 一 分钟 !<BR>  

ggglgq 发表于 2006-5-23 18:23:43

  <BR>    顶!<BR>  
页: [1] 2 3 4 5 6
查看完整版本: 二阶魔方状态的计算程序