数学中国

 找回密码
 注册
搜索
热搜: 活动 交友 discuz
楼主: 白新岭

[原创]请教vfbpgyfk先生一个编程问题

  [复制链接]
 楼主| 发表于 2023-7-12 20:40 | 显示全部楼层
不显示循环号码,运算速度快了不少。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-7-12 21:48 | 显示全部楼层
SELECT 孪串6表
BROWSE LAST
cmax_串6=max_串6
CALCULATE MAX(串6) to temp1
?temp1
CALCULATE Min(串6) to temp1
?temp1
USE
USE 孪串5表 AGAIN IN 0
SELECT 孪串5表
BROWSE LAST
CALCULATE MAX(串5) to temp1
?temp1
CALCULATE Min(串5) to temp1
?temp1
USE
USE 孪串4表 AGAIN IN 0
SELECT 孪串4表
BROWSE LAST
USE
USE 孪串3表 AGAIN IN 0
SELECT 孪串3表
BROWSE LAST
CALCULATE MAX(串3) to temp1
?temp1
CALCULATE Min(串3) to temp1
?temp1
USE
MODIFY COMMAND h:\二生素数串\孪串4的距离.prg AS 936
DO h:\二生素数串\孪串4的距离.prg
SELECT 孪串4表
BROWSE LAST
CALCULATE MAX(串4) to temp1
?temp1
CALCULATE Min(串4) to temp1
?temp1
USE
USE 孪串7表 AGAIN IN 0
SELECT 孪串7表
BROWSE LAST
USE
MODIFY COMMAND h:\二生素数串\孪串6的距离.prg AS 936
MODIFY COMMAND h:\二生素数串\孪串7的距离.prg AS 936
DO h:\二生素数串\孪串7的距离.prg
SELECT 孪串7表
BROWSE LAST
CALCULATE MAX(串7) to temp1
?temp1
CALCULATE Min(串7) to temp1
?temp1
USE
MODIFY COMMAND h:\二生素数串\孪串7的距离.prg AS 936
MODIFY COMMAND h:\二生素数串\孪串8的距离.prg AS 936
MODIFY PROJECT h:\二生素数串\孪串项目.pjx
MODIFY COMMAND h:\二生素数串\孪串8的距离.prg AS 936
MODIFY COMMAND h:\二生素数串\孪串7的距离.prg AS 936
MODIFY COMMAND h:\二生素数串\孪串8的距离.prg AS 936
DO h:\二生素数串\孪串8的距离.prg
SELECT 孪串8表
BROWSE LAST
CALCULATE MAX(串8) to temp1
?temp1
CALCULATE Min(串8) to temp1
?temp1
COUNT ALL FOR 串8=84 TO tj
?tj
COUNT ALL FOR 串8=498 TO tj
?tj
USE

MODIFY COMMAND h:\二生素数串\孪串8的距离.prg AS 936
DO h:\二生素数串\孪串9的距离.prg
SELECT 孪串9表
BROWSE LAST
CALCULATE MAX(串9) to temp1
?temp1
CALCULATE Min(串9) to temp1
?temp1
COUNT ALL FOR 串9=102 TO tj
?tj
COUNT ALL FOR 串9=528 TO tj
?tj
USE
MODIFY COMMAND h:\二生素数串\孪串9的距离.prg AS 936
DO h:\二生素数串\孪串10的距离.prg
SELECT 孪串10表
BROWSE LAST
CALCULATE MAX(串10) to temp1
?temp1
CALCULATE Min(串10) to temp1
?temp1
COUNT ALL FOR 串10=132 TO tj
?tj
COUNT ALL FOR 串10=540 TO tj
?tj
USE
MODIFY COMMAND h:\二生素数串\孪串10的距离.prg AS 936
USE 孪串11表 AGAIN IN 0
SELECT 孪串11表
BROWSE LAST
USE
DO h:\二生素数串\孪串11的距离.prg
SELECT 孪串11表
BROWSE LAST
CALCULATE MAX(串11) to temp1
?temp1
CALCULATE Min(串11) to temp1
?temp1
COUNT ALL FOR 串11=144 TO tj
?tj
COUNT ALL FOR 串11=570 TO tj
?tj
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-7-12 21:49 | 显示全部楼层
打开表求最小值,最大值,及满足条件的记录条数,都很容易。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-7-12 21:55 | 显示全部楼层
截止2023年07月11日周二23:09分浏览量105880,回复2212,热度153
截止2023年07月12日周三21:55分浏览量106029,回复2221,热度153
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-7-13 11:07 | 显示全部楼层
sELECT 1
USE h:\二生素数串\孪串23表.DBF ALIAS 孪串23表
SELECT 3
USE h:\二生素数串\孪串4排列.DBF ALIAS 孪串4排列
kssj=SECONDS()                      &&取出开始时间
     SELECT 1
     GO 1
       FOR k=1 TO 7952172
      &&  @22,20 SAY k
        jlh=recno()&&jlh记录号
        PUBLIC A
        A=孪串23
        SKIP 1
        PUBLIC B
        B=孪串23
        SKIP 1
        PUBLIC C
        C=孪串23
        SKIP 1
        PUBLIC D
        D=孪串23
        E=D-A  
           IF E=30                  
           SELECT 3              &&打开保存求解结果的信息表
           APPEND BLANK                        &&增加一条空记录
           REPLACE 串4距 WITH 30         &&将被判断值保存到被判断值字段中(被判断值数据栏)
           REPLACE 记录4 WITH jlh
           REPLACE 元素1 WITH A
           REPLACE 元素2 WITH B
           REPLACE 元素3 WITH C
           REPLACE 元素4 WITH D
           ENDIF
        SELECT 1
        GO jlh+1
        ENDFOR
=MESSAGEBOX("运行时间:"+LTRIM(STR(INT((SECONDS()-kssj)/60)))+"分"+LTRIM(STR(MOD(SECONDS()-kssj,60),5,2))+"秒",64,"运行时间提示")
回复 支持 反对

使用道具 举报

发表于 2023-7-13 16:31 | 显示全部楼层
sELECT 1
USE h:\二生素数串\孪串23表.DBF ALIAS 孪串23表
SELECT 2
USE h:\二生素数串\孪串5表.DBF ALIAS 孪串5表
SELECT 3
USE h:\二生素数串\孪串5排列.DBF ALIAS 孪串5排列
kssj=SECONDS()                      &&取出开始时间
     SELECT 2
     GO 1
       FOR k=1 TO 7952171
      &&  @22,20 SAY k
      &&  jlh=recno()&&jlh记录号
       PUBLIC F
           F=串5
       PUBLIC G
           G=记录号5
      IF F=36
         SELECT 1
         GO G
           PUBLIC A
           A=孪串23
           SKIP 1
           PUBLIC B
           B=孪串23
           SKIP 1
           PUBLIC C
           C=孪串23
           SKIP 1
           PUBLIC D
           D=孪串23
           SKIP 1
           PUBLIC E
           E=孪串23
                       
           SELECT 3              &&打开保存求解结果的信息表
           APPEND BLANK                        &&增加一条空记录
           REPLACE 串5距 WITH 36        &&将被判断值保存到被判断值字段中(被判断值数据栏)
           REPLACE 记录5 WITH G
           REPLACE 元素1 WITH A
           REPLACE 元素2 WITH B
           REPLACE 元素3 WITH C
           REPLACE 元素4 WITH D
           REPLACE 元素5 WITH E
           ENDIF
        SELECT 2
        skip
        ENDFOR
=MESSAGEBOX("运行时间:"+LTRIM(STR(INT((SECONDS()-kssj)/60)))+"分"+LTRIM(STR(MOD(SECONDS()-kssj,60),5,2))+"秒",64,"运行时间提示")
这是用间距表,满条件后,摘抄数据段(在孪串23表中),制作新表孪串5排列表。
回复 支持 反对

使用道具 举报

发表于 2023-7-13 21:26 | 显示全部楼层
截止2023年07月12日周三21:55分浏览量106029,回复2221,热度153
截止2023年07月13日周四21:26分浏览量106197,回复2224,热度153
回复 支持 反对

使用道具 举报

发表于 2023-7-13 21:41 | 显示全部楼层
SELECT 1
USE H:\素数式系数\素数表十亿.dbf ALIAS 素数表
kssj=SECONDS()  &&取出开始时间
s=3082.130001548320000
SELECT 1
  GO 9
  A=素数
  s=s*A^9*(A-10)/(A-1)^10
        SKIP 1
        FOR  j=1 TO 50876310
        SELECT 1
        B=素数
        s=s*B^9*(B-10)/(B-1)^10
        SELECT 1  
        SKIP
        ENDFOR

?s
=MESSAGEBOX("运行时间:"+LTRIM(STR(INT((SECONDS()-kssj)/60)))+"分"+LTRIM(STR(MOD(SECONDS()-kssj,60),5,2))+"秒",64,"运行时间提示")
最密孪串5的系数。
回复 支持 反对

使用道具 举报

发表于 2023-7-13 22:23 | 显示全部楼层
SELECT 1
USE H:\素数式系数\素数表十亿.dbf ALIAS 素数表
kssj=SECONDS()  &&取出开始时间
s=2427.1773762193000000
SELECT 1
  GO 9
  A=素数
  s=s*A^9*(A-10)/(A-1)^10
        SKIP 1
        FOR  j=1 TO 50876310
        SELECT 1
        B=素数
        s=s*B^9*(B-10)/(B-1)^10
        SELECT 1  
        SKIP
        ENDFOR

?s
=MESSAGEBOX("运行时间:"+LTRIM(STR(INT((SECONDS()-kssj)/60)))+"分"+LTRIM(STR(MOD(SECONDS()-kssj,60),5,2))+"秒",64,"运行时间提示")
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-7-14 22:21 | 显示全部楼层
截止2023年07月13日周四21:26分浏览量106197,回复2224,热度153
截止2023年07月14日周五22:21分浏览量106402,回复2227,热度153
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|数学中国 ( 京ICP备05040119号 )

GMT+8, 2025-7-13 03:56 , Processed in 0.083403 second(s), 15 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表