|
[原创]求x+y+z=2011的正整数解x,y,z无因子2,3,5,7
[这个贴子最后由zhaolu48在 2010/08/08 03:17pm 第 1 次编辑]
为了节省时间,用下面程序计算,
得到的只是,x≤y≤z的结果
其中sjk.dbf只有一个字段“sj”,
用如下几个命令就可以得到1-20111间的所有不含2,3,5,7因子的自然数:
DIMENSION a(20109,1)
a=';';
APPEND FROM arra a
REPLACE ALL sj WITH RECNO()
DELETE FOR MOD(sj,3)=0
DELETE FOR MOD(sj,5)=0
DELETE FOR MOD(sj,7)=0
DELETE FOR MOD(sj,2)=0
PACK
得到sjk.dbf只有4596条记录,即1-20111之间不含2,3,5,7的自然数只有4596个。
CLEAR ALL
CLEAR
SET TALK OFF
sja=TIME()
DIMENSION a(4596,1),b(4596)
USE sjk
COPY TO ARRAY a
ACOPY(a,b)
k=0
FOR i=1 TO 1533
FOR j=i TO 4595
s=b(i)+b(j)
c=2011-s
IF c<=0
EXIT
ELSE
LOCATE FOR sj=c
IF RECNO()<=4596
k=k+1
ENDIF
ENDIF
endf
endf
?k
sjb=TIME()
?sja,'; ';,sjb
用此程序计算的结果为: 27831
用时55秒。 |
|