数学中国

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

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

  [复制链接]
发表于 2021-11-18 22:57 | 显示全部楼层
SELECT 477
USE G:\三角递增法\无偶数表总表.DBF ALIAS 无偶数总表
kssj=SECONDS()
bwjm="偶数周期表"
For j=238 to 255
      @ 5,12 say j
     k=j
      wd=bwjm+ALLTRIM(STR(j))
      USE G:\三角递增法\&wd in 0
      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 477
         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-18 22:57 | 显示全部楼层
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:\三角递增法\相同记录数表总15 && 取得各记录的相同记录数及其各字段值
SELECT * FROM DBF() WHERE 相同记录数>1 && 该查询结果详细列举了表1中各重复记录的 重复数
USE IN   相同记录数表总15
回复 支持 反对

使用道具 举报

发表于 2021-11-18 22:57 | 显示全部楼层
SELECT 1
USE G:\三角递增法\相同记录数表总15.DBF ALIAS 相同记录表15
SELECT 2
USE G:\三角递增法\无偶最终结果表新总15.DBF ALIAS 无偶结果表新15
kssj=SECONDS()
SELECT  1
GO 1
For i=1 to 544715
      @ 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-18 22:58 | 显示全部楼层
SELECT 1
USE G:\三角递增法\无偶最终结果表新总15.DBF ALIAS 无偶总新15
SELECT 2
USE G:\三角递增法\无偶数统计表.DBF ALIAS 无偶统计
kssj=SECONDS()
SELECT 1
     For j=4999 to 5355
      @ 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-18 22:58 | 显示全部楼层
无偶
5172699390
回复 支持 反对

使用道具 举报

发表于 2021-11-18 22:58 | 显示全部楼层
区段        范围        统计        各段个数        总区段
4999        4999000000        0        0        239
5000        5000000000        0        0        239
5001        5001000000        0        0        239
5002        5002000000        0        0        239
5003        5003000000        0        0        239
5004        5004000000        0        0        239
5005        5005000000        0        0        239
5006        5006000000        0        0        239
5007        5007000000        0        0        239
5008        5008000000        0        0        239
5009        5009000000        0        0        239
5010        5010000000        0        0        239
5011        5011000000        0        0        239
5012        5012000000        0        0        239
5013        5013000000        0        0        239
5014        5014000000        0        0        239
5015        5015000000        0        0        239
5016        5016000000        0        0        239
5017        5017000000        0        0        239
5018        5018000000        0        0        239
5019        5019000000        0        0        239
5020        5020000000        0        0        240
5021        5021000000        0        0        240
5022        5022000000        0        0        240
5023        5023000000        0        0        240
5024        5024000000        0        0        240
5025        5025000000        0        0        240
5026        5026000000        0        0        240
5027        5027000000        0        0        240
5028        5028000000        0        0        240
5029        5029000000        0        0        240
5030        5030000000        0        0        240
5031        5031000000        0        0        240
5032        5032000000        0        0        240
5033        5033000000        0        0        240
5034        5034000000        0        0        240
5035        5035000000        0        0        240
5036        5036000000        0        0        240
5037        5037000000        0        0        240
5038        5038000000        0        0        240
5039        5039000000        0        0        240
5040        5040000000        0        0        240
5041        5041000000        0        0        241
5042        5042000000        0        0        241
5043        5043000000        0        0        241
5044        5044000000        0        0        241
5045        5045000000        0        0        241
5046        5046000000        0        0        241
5047        5047000000        0        0        241
5048        5048000000        0        0        241
5049        5049000000        0        0        241
5050        5050000000        0        0        241
5051        5051000000        0        0        241
5052        5052000000        0        0        241
5053        5053000000        0        0        241
5054        5054000000        0        0        241
5055        5055000000        0        0        241
5056        5056000000        0        0        241
5057        5057000000        0        0        241
5058        5058000000        0        0        241
5059        5059000000        0        0        241
5060        5060000000        0        0        241
5061        5061000000        0        0        241
5062        5062000000        0        0        242
5063        5063000000        0        0        242
5064        5064000000        0        0        242
5065        5065000000        0        0        242
5066        5066000000        0        0        242
5067        5067000000        0        0        242
5068        5068000000        0        0        242
5069        5069000000        0        0        242
5070        5070000000        0        0        242
5071        5071000000        0        0        242
5072        5072000000        0        0        242
5073        5073000000        0        0        242
5074        5074000000        0        0        242
5075        5075000000        0        0        242
5076        5076000000        0        0        242
5077        5077000000        0        0        242
5078        5078000000        0        0        242
5079        5079000000        0        0        242
5080        5080000000        0        0        242
5081        5081000000        0        0        242
5082        5082000000        0        0        242
5083        5083000000        0        0        243
5084        5084000000        0        0        243
5085        5085000000        0        0        243
5086        5086000000        0        0        243
5087        5087000000        0        0        243
5088        5088000000        0        0        243
5089        5089000000        0        0        243
5090        5090000000        0        0        243
5091        5091000000        0        0        243
5092        5092000000        0        0        243
5093        5093000000        0        0        243
5094        5094000000        0        0        243
5095        5095000000        0        0        243
5096        5096000000        0        0        243
5097        5097000000        0        0        243
5098        5098000000        0        0        243
5099        5099000000        0        0        243
5100        5100000000        0        0        243
5101        5101000000        0        0        243
5102        5102000000        0        0        243
5103        5103000000        0        0        243
5104        5104000000        0        0        244
5105        5105000000        0        0        244
5106        5106000000        0        0        244
5107        5107000000        0        0        244
5108        5108000000        0        0        244
5109        5109000000        0        0        244
5110        5110000000        0        0        244
5111        5111000000        0        0        244
5112        5112000000        0        0        244
5113        5113000000        0        0        244
5114        5114000000        0        0        244
5115        5115000000        0        0        244
5116        5116000000        0        0        244
5117        5117000000        0        0        244
5118        5118000000        0        0        244
5119        5119000000        0        0        244
5120        5120000000        0        0        244
5121        5121000000        0        0        244
5122        5122000000        0        0        244
5123        5123000000        0        0        244
5124        5124000000        0        0        244
5125        5125000000        0        0        245
5126        5126000000        0        0        245
5127        5127000000        0        0        245
5128        5128000000        0        0        245
5129        5129000000        0        0        245
5130        5130000000        0        0        245
5131        5131000000        0        0        245
5132        5132000000        0        0        245
5133        5133000000        0        0        245
5134        5134000000        0        0        245
5135        5135000000        0        0        245
5136        5136000000        0        0        245
5137        5137000000        0        0        245
5138        5138000000        0        0        245
5139        5139000000        0        0        245
5140        5140000000        0        0        245
5141        5141000000        0        0        245
5142        5142000000        0        0        245
5143        5143000000        0        0        245
5144        5144000000        0        0        245
5145        5145000000        0        0        245
5146        5146000000        0        0        246
5147        5147000000        0        0        246
5148        5148000000        0        0        246
5149        5149000000        0        0        246
5150        5150000000        0        0        246
5151        5151000000        0        0        246
5152        5152000000        0        0        246
5153        5153000000        0        0        246
5154        5154000000        0        0        246
5155        5155000000        0        0        246
5156        5156000000        0        0        246
5157        5157000000        0        0        246
5158        5158000000        0        0        246
5159        5159000000        0        0        246
5160        5160000000        0        0        246
5161        5161000000        0        0        246
5162        5162000000        0        0        246
5163        5163000000        0        0        246
5164        5164000000        0        0        246
5165        5165000000        0        0        246
5166        5166000000        0        0        246
5167        5167000000        0        0        247
5168        5168000000        0        0        247
5169        5169000000        0        0        247
5170        5170000000        0        0        247
5171        5171000000        0        0        247
5172        5172000000        0        0        247
5173        5173000000        1        1        247
5174        5174000000        1        0        247
5175        5175000000        1        0        247
5176        5176000000        1        0        247
5177        5177000000        1        0        247
5178        5178000000        1        0        247
5179        5179000000        1        0        247
5180        5180000000        1        0        247
5181        5181000000        1        0        247
5182        5182000000        1        0        247
5183        5183000000        1        0        247
5184        5184000000        1        0        247
5185        5185000000        1        0        247
5186        5186000000        1        0        247
5187        5187000000        1        0        247
5188        5188000000        1        0        248
5189        5189000000        1        0        248
5190        5190000000        1        0        248
5191        5191000000        1        0        248
5192        5192000000        1        0        248
5193        5193000000        1        0        248
5194        5194000000        1        0        248
5195        5195000000        1        0        248
5196        5196000000        1        0        248
5197        5197000000        1        0        248
5198        5198000000        1        0        248
5199        5199000000        1        0        248
5200        5200000000        1        0        248
5201        5201000000        1        0        248
5202        5202000000        1        0        248
5203        5203000000        1        0        248
5204        5204000000        1        0        248
5205        5205000000        1        0        248
5206        5206000000        1        0        248
5207        5207000000        1        0        248
5208        5208000000        1        0        248
5209        5209000000        1        0        249
5210        5210000000        1        0        249
5211        5211000000        1        0        249
5212        5212000000        1        0        249
5213        5213000000        1        0        249
5214        5214000000        1        0        249
5215        5215000000        1        0        249
5216        5216000000        1        0        249
5217        5217000000        1        0        249
5218        5218000000        1        0        249
5219        5219000000        1        0        249
5220        5220000000        1        0        249
5221        5221000000        1        0        249
5222        5222000000        1        0        249
5223        5223000000        1        0        249
5224        5224000000        1        0        249
5225        5225000000        1        0        249
5226        5226000000        1        0        249
5227        5227000000        1        0        249
5228        5228000000        1        0        249
5229        5229000000        1        0        249
5230        5230000000        1        0        250
5231        5231000000        1        0        250
5232        5232000000        1        0        250
5233        5233000000        1        0        250
5234        5234000000        1        0        250
5235        5235000000        1        0        250
5236        5236000000        1        0        250
5237        5237000000        1        0        250
5238        5238000000        1        0        250
5239        5239000000        1        0        250
5240        5240000000        1        0        250
5241        5241000000        1        0        250
5242        5242000000        1        0        250
5243        5243000000        1        0        250
5244        5244000000        1        0        250
5245        5245000000        1        0        250
5246        5246000000        1        0        250
5247        5247000000        1        0        250
5248        5248000000        1        0        250
5249        5249000000        1        0        250
5250        5250000000        1        0        250
5251        5251000000        1        0        251
5252        5252000000        1        0        251
5253        5253000000        1        0        251
5254        5254000000        1        0        251
5255        5255000000        1        0        251
5256        5256000000        1        0        251
5257        5257000000        1        0        251
5258        5258000000        1        0        251
5259        5259000000        1        0        251
5260        5260000000        1        0        251
5261        5261000000        1        0        251
5262        5262000000        1        0        251
5263        5263000000        1        0        251
5264        5264000000        1        0        251
5265        5265000000        1        0        251
5266        5266000000        1        0        251
5267        5267000000        1        0        251
5268        5268000000        1        0        251
5269        5269000000        1        0        251
5270        5270000000        1        0        251
5271        5271000000        1        0        251
5272        5272000000        1        0        252
5273        5273000000        1        0        252
5274        5274000000        1        0        252
5275        5275000000        1        0        252
5276        5276000000        1        0        252
5277        5277000000        1        0        252
5278        5278000000        1        0        252
5279        5279000000        1        0        252
5280        5280000000        1        0        252
5281        5281000000        1        0        252
5282        5282000000        1        0        252
5283        5283000000        1        0        252
5284        5284000000        1        0        252
5285        5285000000        1        0        252
5286        5286000000        1        0        252
5287        5287000000        1        0        252
5288        5288000000        1        0        252
5289        5289000000        1        0        252
5290        5290000000        1        0        252
5291        5291000000        1        0        252
5292        5292000000        1        0        252
5293        5293000000        1        0        253
5294        5294000000        1        0        253
5295        5295000000        1        0        253
5296        5296000000        1        0        253
5297        5297000000        1        0        253
5298        5298000000        1        0        253
5299        5299000000        1        0        253
5300        5300000000        1        0        253
5301        5301000000        1        0        253
5302        5302000000        1        0        253
5303        5303000000        1        0        253
5304        5304000000        1        0        253
5305        5305000000        1        0        253
5306        5306000000        1        0        253
5307        5307000000        1        0        253
5308        5308000000        1        0        253
5309        5309000000        1        0        253
5310        5310000000        1        0        253
5311        5311000000        1        0        253
5312        5312000000        1        0        253
5313        5313000000        1        0        253
5314        5314000000        1        0        254
5315        5315000000        1        0        254
5316        5316000000        1        0        254
5317        5317000000        1        0        254
5318        5318000000        1        0        254
5319        5319000000        1        0        254
5320        5320000000        1        0        254
5321        5321000000        1        0        254
5322        5322000000        1        0        254
5323        5323000000        1        0        254
5324        5324000000        1        0        254
5325        5325000000        1        0        254
5326        5326000000        1        0        254
5327        5327000000        1        0        254
5328        5328000000        1        0        254
5329        5329000000        1        0        254
5330        5330000000        1        0        254
5331        5331000000        1        0        254
5332        5332000000        1        0        254
5333        5333000000        1        0        254
5334        5334000000        1        0        254
5335        5335000000        1        0        255
5336        5336000000        1        0        255
5337        5337000000        1        0        255
5338        5338000000        1        0        255
5339        5339000000        1        0        255
5340        5340000000        1        0        255
5341        5341000000        1        0        255
5342        5342000000        1        0        255
5343        5343000000        1        0        255
5344        5344000000        1        0        255
5345        5345000000        1        0        255
5346        5346000000        1        0        255
5347        5347000000        1        0        255
5348        5348000000        1        0        255
5349        5349000000        1        0        255
5350        5350000000        1        0        255
5351        5351000000        1        0        255
5352        5352000000        1        0        255
5353        5353000000        1        0        255
5354        5354000000        1        0        255
5355        5355000000        1        0        255
回复 支持 反对

使用道具 举报

发表于 2021-11-18 22:59 | 显示全部楼层
总区段        统计15
239        0
240        0
241        0
242        0
243        0
244        0
245        0
246        0
247        1
248        0
249        0
250        0
251        0
252        0
253        0
254        0
255        0
回复 支持 反对

使用道具 举报

发表于 2021-11-19 16:16 | 显示全部楼层
SELECT 477
USE G:\三角递增法\无偶数表总表.DBF ALIAS 无偶数总表
kssj=SECONDS()
wozzxz="无偶最终结果表新总"
For l=17 to 18
      @ 15,12 say l
      wozb=wozzxz+ALLTRIM(STR(l))
      USE IN 477
      USE G:\三角递增法\无偶数表总表.DBF ALIAS 无偶数总表
       SELECT 477
     
       DELETE ALL
       PACK
      
      
bwjm="偶数周期表"
For j=(l-1)*17 to 17*l
      @ 5,12 say j
     k=j
      wd=bwjm+ALLTRIM(STR(j))
      USE G:\三角递增法\&wd in 0
      For i=(j-1)*500000+1 to (j+1)*500000

      @ 10,22 say i
      n=i
      s=0
    do case
    case MOD(n,5)=1
        s=s+30
    case MOD(n,5)=2
        s=s+90
    case MOD(n,5)=3
        s=s+120
    case MOD(n,5)=4
        s=s+180
    case MOD(n,5)=0
        s=s+210
    endcase
     
      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
         insert into 无偶数总表 (无偶) values (wou)    && 上面三名改成这一句
         ENDIF
   
     ENDFOR
     use in "偶数周期表"+ALLTRIM(STR(k))        && 用完就关闭,否则可能会崩溃
ENDFOR
SELECT * FROM 无偶数总表 WHERE 无偶 IN ( SELECT 无偶 FROM 无偶数总表 GROUP BY 无偶 HAVING count(*) > 1) order by 无偶 INTO table G:\三角递增法\&wozb
use IN &wozb
SELECT 477
USE IN  477
ENDFOR

    =MESSAGEBOX("运行时间:"+LTRIM(STR(INT((SECONDS()-kssj)/60)))+"分"+LTRIM(STR(MOD(SECONDS()-kssj,60),5,2))+"秒",64,"运行时间提示")
第二步,第三步,第四步合并(除了第一步制作偶数周期表外,和最后一步的统计工作外,整个程序连为一体)
回复 支持 反对

使用道具 举报

发表于 2021-11-19 19:41 | 显示全部楼层
SELECT 477
USE d:\等差四生素数7\无偶数表总表.DBF ALIAS 无偶数总表
kssj=SECONDS()
wozzxz="无偶最终结果表新总"
For l=2 to 3
      @ 15,12 say l
      wozb=wozzxz+ALLTRIM(STR(l))
      USE IN 477
      USE d:\等差四生素数7\无偶数表总表.DBF ALIAS 无偶数总表
       SELECT 477
     
       DELETE ALL
       PACK
      
      
bwjm="偶数周期表"
For j=(l-1)*9 to 9*l
      @ 5,12 say j
     k=j
      wd=bwjm+ALLTRIM(STR(j))
      USE d:\等差四生素数7\&wd in 0
      For i=(j-1)*1050000+1 to (j+1)*1050000

      @ 10,22 say i
   && n=i
   && s=0
   && do case
   && case MOD(n,5)=1
   &&     s=s+30
   && case MOD(n,5)=2
   &&     s=s+90
   && case MOD(n,5)=3
   &&    s=s+120
   && case MOD(n,5)=4
   &&    s=s+180
   && case MOD(n,5)=0
   &&    s=s+210
   && endcase
     
   &&  wou=INT((n-1)/5)*210+s
      wou=2*i
      SELECT "偶数周期表"+ALLTRIM(STR(k))
      
      
         && select G:\三角递增法\&WD..DBF IN 0
         A=偶数
         IF A=wou
         SELECT "偶数周期表"+ALLTRIM(STR(k))
         skip
         LOOP
         ELSE
         insert into 无偶数总表 (无偶) values (wou)    && 上面三名改成这一句
         ENDIF
   
     ENDFOR
     use in "偶数周期表"+ALLTRIM(STR(k))        && 用完就关闭,否则可能会崩溃
ENDFOR
SELECT * FROM 无偶数总表 WHERE 无偶 IN ( SELECT 无偶 FROM 无偶数总表 GROUP BY 无偶 HAVING count(*) > 1) order by 无偶 INTO table d:\等差四生素数7\&wozb
use IN &wozb
SELECT 477
USE IN  477
ENDFOR

    =MESSAGEBOX("运行时间:"+LTRIM(STR(INT((SECONDS()-kssj)/60)))+"分"+LTRIM(STR(MOD(SECONDS()-kssj,60),5,2))+"秒",64,"运行时间提示")
这是处理一个类似问题:等差四生素数(P,P+210,P+420,P+630)的中项和合成分布。
回复 支持 反对

使用道具 举报

发表于 2021-11-21 10:42 | 显示全部楼层
SELECT 477
USE d:\等差四生素数7\无偶数表总表.DBF ALIAS 无偶数总表
kssj=SECONDS()
wozzxz="无偶最终结果表新总"
For l=2 to 2
      @ 15,12 say l
      wozb=wozzxz+ALLTRIM(STR(l))
      USE IN 477
      USE d:\等差四生素数7\无偶数表总表.DBF ALIAS 无偶数总表
       SELECT 477
     
       DELETE ALL
       PACK
      
      
bwjm="偶数周期表"
For j=(l-1)*9 to 9*l
      @ 5,12 say j
     k=j
      wd=bwjm+ALLTRIM(STR(j))
      USE d:\等差四生素数7\&wd in 0
      For i=(j-1)*1050000+1 to (j+1)*1050000

      @ 10,22 say i
   && n=i
   && s=0
   && do case
   && case MOD(n,5)=1
   &&     s=s+30
   && case MOD(n,5)=2
   &&     s=s+90
   && case MOD(n,5)=3
   &&    s=s+120
   && case MOD(n,5)=4
   &&    s=s+180
   && case MOD(n,5)=0
   &&    s=s+210
   && endcase
     
   &&  wou=INT((n-1)/5)*210+s
      wou=2*i
      SELECT "偶数周期表"+ALLTRIM(STR(k))
      
      
         && select G:\三角递增法\&WD..DBF IN 0
         A=偶数
         IF A=wou
         SELECT "偶数周期表"+ALLTRIM(STR(k))
         skip
         LOOP
         ELSE
         insert into 无偶数总表 (无偶) values (wou)    && 上面三名改成这一句
         ENDIF
   
     ENDFOR
     use in "偶数周期表"+ALLTRIM(STR(k))        && 用完就关闭,否则可能会崩溃
ENDFOR
SELECT * FROM 无偶数总表 WHERE 无偶 IN ( SELECT 无偶 FROM 无偶数总表 GROUP BY 无偶 HAVING count(*) > 1) order by 无偶 INTO table d:\等差四生素数7\&wozb
use IN &wozb
SELECT 477
USE IN  477
ENDFOR

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-5-18 22:49 , Processed in 0.088970 second(s), 15 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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