数学中国

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

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

  [复制链接]
发表于 2021-11-10 22:30 | 显示全部楼层
SELECT 1
USE f:\等差四生素数7\四中d210表.DBF ALIAS 四中表
SELECT 2
USE f:\等差四生素数7\各段四中个数表7.DBF ALIAS 四生个数表7
SELECT 3
USE f:\等差四生素数7\偶数表新7.DBF ALIAS 偶数表新7
kssj=SECONDS()
bwjm="偶数周期表"
For i=2 to 10
      @ 5,12 say i
      wd=bwjm+ALLTRIM(STR(i-1))
      USE IN 3
      USE f:\等差四生素数7\偶数表新7.DBF ALIAS 偶数表新7
       SELECT 3
     
       DELETE ALL
       PACK
       FOR j=1 TO INT(i/2)
        @ 15,22 say j
        SELECT  2     
        GO j
        zgs1=总个数
        fgs1=分个数
        SELECT  2
        GO i-j
        zgs2=总个数
        fgs2=分个数
           SELECT 1
           GO zgs1-fgs1+1
               FOR k1=1  TO  fgs1
               A=四中210
               jl1=recno()
                 SELECT  1
                 GO zgs2-fgs2+1
                 For k2=1 to fgs2
                 jl2=recno()
                 B=四中210
                 C=A+B
                 SELECT 3
                 APPEND BLANK   
                 REPLACE 偶数 WITH C   
                 SELECT 1
                 GO jl2+1
                 ENDFOR
               SELECT 1
               GO jl1+1
             ENDFOR   
          ENDFOR
       SELECT 3
       USE IN 3&&打开,或关闭,那个工作区(或者,写别名)
      
       select * from 偶数表新7.dbf DISTINCT INTO table f:\等差四生素数7\&wd
      USE IN &wd
      SELECT 3
      USE IN  3
    ENDFOR
    =MESSAGEBOX("运行时间:"+LTRIM(STR(INT((SECONDS()-kssj)/60)))+"分"+LTRIM(STR(MOD(SECONDS()-kssj,60),5,2))+"秒",64,"运行时间提示")

评分

参与人数 1威望 +20 收起 理由
白新岭 + 20 很给力!

查看全部评分

回复 支持 反对

使用道具 举报

发表于 2021-11-11 07:00 | 显示全部楼层
截止2021年11月11日周四6:58分。温度升至54度,回复1037,浏览量40435.查看温度
回复 支持 反对

使用道具 举报

发表于 2021-11-12 21:06 | 显示全部楼层
SELECT 239
USE G:\三角递增法\无偶数表总表.DBF ALIAS 无偶数总表
SELECT 136
USE G:\三角递增法\偶数周期表136.DBF ALIAS 偶周期136
SELECT 137
USE G:\三角递增法\偶数周期表137.DBF ALIAS 偶周期137
SELECT 138
USE G:\三角递增法\偶数周期表138.DBF ALIAS 偶周期138
SELECT 139
USE G:\三角递增法\偶数周期表139.DBF ALIAS 偶周期139
SELECT 140
USE G:\三角递增法\偶数周期表140.DBF ALIAS 偶周期140
SELECT 141
USE G:\三角递增法\偶数周期表141.DBF ALIAS 偶周期141
SELECT 142
USE G:\三角递增法\偶数周期表142.DBF ALIAS 偶周期142
SELECT 143
USE G:\三角递增法\偶数周期表143.DBF ALIAS 偶周期143
SELECT 144
USE G:\三角递增法\偶数周期表144.DBF ALIAS 偶周期144
SELECT 145
USE G:\三角递增法\偶数周期表145.DBF ALIAS 偶周期145
SELECT 146
USE G:\三角递增法\偶数周期表146.DBF ALIAS 偶周期146
SELECT 147
USE G:\三角递增法\偶数周期表147.DBF ALIAS 偶周期147
SELECT 148
USE G:\三角递增法\偶数周期表148.DBF ALIAS 偶周期148
SELECT 149
USE G:\三角递增法\偶数周期表149.DBF ALIAS 偶周期149
SELECT 150
USE G:\三角递增法\偶数周期表150.DBF ALIAS 偶周期150
SELECT 151
USE G:\三角递增法\偶数周期表151.DBF ALIAS 偶周期151
SELECT 152
USE G:\三角递增法\偶数周期表152.DBF ALIAS 偶周期152
SELECT 153
USE G:\三角递增法\偶数周期表153.DBF ALIAS 偶周期153
kssj=SECONDS()
bwjm="偶周期"
For j=136 to 153
      @ 5,12 say j
     k=j
      wd=bwjm+ALLTRIM(STR(j))
&& CLOSE DATABASES
&& SET COMPATIBLE ON
&& OPEN DATABASE (HOME(2) + 'data\testdata')

&& SELECT 1  && 未使用的工作区
&& USE  G:\三角递增法\&WD ALIAS n && 打开 Customer 表
      For i=(j-1)*500000+1 to (j+1)*500000

      @ 5,12 say i
      n=i
      s=0
      IF MOD(n,5)=1
      s=s+30
      ENDIF
      IF MOD(n,5)=2
      s=s+90
      ENDIF
      IF MOD(n,5)=3
      s=s+120
      ENDIF
      IF MOD(n,5)=4
      s=s+180
      ENDIF
      IF MOD(n,5)=0
      s=s+210
      ENDIF
     
      wou=INT((n-1)/5)*210+s
      SELECT "偶周期"+ALLTRIM(STR(k))
      
      
         && select G:\三角递增法\&WD..DBF IN 0
       A=偶数
         IF A=wou
         SELECT "偶周期"+ALLTRIM(STR(k))
         skip
         LOOP
         ELSE
         SELECT 239
         APPEND BLANK
         REPLACE 无偶 WITH wou
         ENDIF
   
     ENDFOR
ENDFOR
    =MESSAGEBOX("运行时间:"+LTRIM(STR(INT((SECONDS()-kssj)/60)))+"分"+LTRIM(STR(MOD(SECONDS()-kssj,60),5,2))+"秒",64,"运行时间提示")
回复 支持 反对

使用道具 举报

发表于 2021-11-12 21:06 | 显示全部楼层
CLOSE DATA
USE G:\三角递增法\无偶数表总表.dbf && 设源表的名称为"表1"
P=''
FOR K=1 TO FCOUNT()
P=P+IIF(EMPTY(P),'',',')+FIELDS(K)&& 取得表中所有字段名称,放在P中
ENDFOR

SELECT *,COUNT(FIELDS(1)) AS 相同记录数 FROM DBF() GROUP BY &P. INTO DBF G:\三角递增法\相同记录数表总9 && 取得各记录的相同记录数及其各字段值
SELECT * FROM DBF() WHERE 相同记录数>1 && 该查询结果详细列举了表1中各重复记录的 重复数
USE IN   相同记录数表总9
回复 支持 反对

使用道具 举报

发表于 2021-11-12 21:07 | 显示全部楼层
SELECT 1
USE G:\三角递增法\相同记录数表总9.DBF ALIAS 相同记录表9
SELECT 2
USE G:\三角递增法\无偶最终结果表新总9.DBF ALIAS 无偶结果表新9
kssj=SECONDS()
SELECT  1
GO 1
For i=1 to 1304496
      @ 5,12 say i
    SELECT  1     &&打开盛放素数式的表
    && jl=recno()
    PUBLIC A
    A=相同记录数
    B=无偶
    IF A=2
         SELECT 2
         APPEND BLANK     &&增加一条空记录
         REPLACE 无偶 WITH B     &&将N值付给素数式
    ENDIF
   
   SELECT 1
   skip
   ENDFOR
    =MESSAGEBOX("运行时间:"+LTRIM(STR(INT((SECONDS()-kssj)/60)))+"分"+LTRIM(STR(MOD(SECONDS()-kssj,60),5,2))+"秒",64,"运行时间提示")
回复 支持 反对

使用道具 举报

发表于 2021-11-12 21:08 | 显示全部楼层
SELECT 1
USE G:\三角递增法\无偶最终结果表新总9.DBF ALIAS 无偶总新9
SELECT 2
USE G:\三角递增法\无偶数统计表.DBF ALIAS 无偶统计
kssj=SECONDS()
SELECT 1
     For j=2857 to 3213
      @ 3,6 say j
      fw=j*1000000
            SELECT 1
            GO 1
            COUNT ALL FOR 无偶<=fw TO tj
              SELECT  2  
              APPEND BLANK   
              REPLACE 范围 WITH fw
              REPLACE 统计 WITH tj
     ENDFOR
   
    =MESSAGEBOX("运行时间:"+LTRIM(STR(INT((SECONDS()-kssj)/60)))+"分"+LTRIM(STR(MOD(SECONDS()-kssj,60),5,2))+"秒",64,"运行时间提示")
回复 支持 反对

使用道具 举报

发表于 2021-11-12 21:10 | 显示全部楼层
总区段        统计9
137        1
138        2
139        7
140        2
141        4
142        0
143        1
144        2
145        3
146        2
147        2
148        1
149        2
150        7547
151        33178
152        0
153        4
154        0
150区和151区错误
回复 支持 反对

使用道具 举报

发表于 2021-11-12 21:40 | 显示全部楼层
总区段        统计9
137        1
138        2
139        7
140        2
141        4
142        0
143        1
144        2
145        3
146        2
147        2
148        1
149        2
150        1
151        2
152        0
153        4
154        0
回复 支持 反对

使用道具 举报

发表于 2021-11-13 11:08 | 显示全部楼层
SELECT 239
USE G:\三角递增法\无偶数表总表.DBF ALIAS 无偶数总表
SELECT 153
USE G:\三角递增法\偶数周期表153.DBF ALIAS 偶周期153
SELECT 154
USE G:\三角递增法\偶数周期表154.DBF ALIAS 偶周期154
SELECT 155
USE G:\三角递增法\偶数周期表155.DBF ALIAS 偶周期155
SELECT 156
USE G:\三角递增法\偶数周期表156.DBF ALIAS 偶周期156
SELECT 157
USE G:\三角递增法\偶数周期表157.DBF ALIAS 偶周期157
SELECT 158
USE G:\三角递增法\偶数周期表158.DBF ALIAS 偶周期158
SELECT 159
USE G:\三角递增法\偶数周期表159.DBF ALIAS 偶周期159
SELECT 160
USE G:\三角递增法\偶数周期表160.DBF ALIAS 偶周期160
SELECT 161
USE G:\三角递增法\偶数周期表161.DBF ALIAS 偶周期161
SELECT 162
USE G:\三角递增法\偶数周期表162.DBF ALIAS 偶周期162
SELECT 163
USE G:\三角递增法\偶数周期表163.DBF ALIAS 偶周期163
SELECT 164
USE G:\三角递增法\偶数周期表164.DBF ALIAS 偶周期164
SELECT 165
USE G:\三角递增法\偶数周期表165.DBF ALIAS 偶周期165
SELECT 166
USE G:\三角递增法\偶数周期表166.DBF ALIAS 偶周期166
SELECT 167
USE G:\三角递增法\偶数周期表167.DBF ALIAS 偶周期167
SELECT 168
USE G:\三角递增法\偶数周期表168.DBF ALIAS 偶周期168
SELECT 169
USE G:\三角递增法\偶数周期表169.DBF ALIAS 偶周期169
SELECT 170
USE G:\三角递增法\偶数周期表170.DBF ALIAS 偶周期170
kssj=SECONDS()
bwjm="偶周期"
For j=153 to 170
      @ 5,12 say j
     k=j
      wd=bwjm+ALLTRIM(STR(j))
&& CLOSE DATABASES
&& SET COMPATIBLE ON
&& OPEN DATABASE (HOME(2) + 'data\testdata')

&& SELECT 1  && 未使用的工作区
&& USE  G:\三角递增法\&WD ALIAS n && 打开 Customer 表
      For i=(j-1)*500000+1 to (j+1)*500000

      @ 5,12 say i
      n=i
      s=0
      IF MOD(n,5)=1
      s=s+30
      ENDIF
      IF MOD(n,5)=2
      s=s+90
      ENDIF
      IF MOD(n,5)=3
      s=s+120
      ENDIF
      IF MOD(n,5)=4
      s=s+180
      ENDIF
      IF MOD(n,5)=0
      s=s+210
      ENDIF
     
      wou=INT((n-1)/5)*210+s
      SELECT "偶周期"+ALLTRIM(STR(k))
      
      
         && select G:\三角递增法\&WD..DBF IN 0
       A=偶数
         IF A=wou
         SELECT "偶周期"+ALLTRIM(STR(k))
         skip
         LOOP
         ELSE
         SELECT 239
         APPEND BLANK
         REPLACE 无偶 WITH wou
         ENDIF
   
     ENDFOR
ENDFOR
    =MESSAGEBOX("运行时间:"+LTRIM(STR(INT((SECONDS()-kssj)/60)))+"分"+LTRIM(STR(MOD(SECONDS()-kssj,60),5,2))+"秒",64,"运行时间提示")
回复 支持 反对

使用道具 举报

发表于 2021-11-13 11:09 | 显示全部楼层
CLOSE DATA
USE G:\三角递增法\无偶数表总表.dbf && 设源表的名称为"表1"
P=''
FOR K=1 TO FCOUNT()
P=P+IIF(EMPTY(P),'',',')+FIELDS(K)&& 取得表中所有字段名称,放在P中
ENDFOR

SELECT *,COUNT(FIELDS(1)) AS 相同记录数 FROM DBF() GROUP BY &P. INTO DBF G:\三角递增法\相同记录数表总10 && 取得各记录的相同记录数及其各字段值
SELECT * FROM DBF() WHERE 相同记录数>1 && 该查询结果详细列举了表1中各重复记录的 重复数
USE IN   相同记录数表总10
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-5-19 03:05 , Processed in 0.087242 second(s), 16 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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