| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
共有 2059 人关注过本帖
标题:简单的筛选二生素数程序
取消只看楼主 加入收藏
独木星空
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:河北省曲阳县
等 级:版主
威 望:71
帖 子:1312
专家分:683
注 册:2016-6-29
收藏
得分:0 
SELECT 1
USE D:\素数式系数\素数表十亿.DBF ALIAS 素数表
SELECT 2
USE D:\素数式系数\等差3生素数公差六.DBF ALIAS 等差3生六
kssj=SECONDS()
SELECT  1
GO 1
For i=1 to 5761455
      @ 5,12 say i
    SELECT  1     &&打开盛放素数式的表
    jl=recno()
    PUBLIC A
    A=素数
    SKIP 1
    PUBLIC B
    B=素数
    SKIP 2 &&素数C与B之间间隔1个素数
    PUBLIC C
    C=素数
    cj1=B-A  &&求两个素数的差值
    cj2=C-B  &&求两个素数的差值
    IF cj1=6 AND cj2=6  &&and同时满足条件
         SELECT 2
         APPEND BLANK     &&增加一条空记录
         REPLACE dcsz WITH B         &&将A+C的均值(即B)赋给dcsz(等差三中项)
    ENDIF
      SELECT 1
      GO jl+1
   ENDFOR
    =MESSAGEBOX("运行时间:"+LTRIM(STR(INT((SECONDS()-kssj)/60)))+"分"+LTRIM(STR(MOD(SECONDS()-kssj,60),5,2))+"秒",64,"运行时间提示")

素数问题的解决是我学习编程永恒的动力。
2025-05-27 00:23
独木星空
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:河北省曲阳县
等 级:版主
威 望:71
帖 子:1312
专家分:683
注 册:2016-6-29
收藏
得分:0 
USE
MODIFY PROJECT d:\素数式系数\素数式系数项目.pjx
USE 等差3生素数公差六 AGAIN IN 0
SELECT 等差3生素数公差六
BROWSE LAST
COPY TO d:\三生素数中项\等差三中d六.dbf
USE
MODIFY PROJECT d:\三生素数中项\三生素数项目.pjx
ADD TABLE d:\三生素数中项\等差三中d六.dbf
USE 等差三中d六 AGAIN IN 0
SELECT 等差三中d六
BROWSE LAST
SORT ON dcsz ASCENDING
SELECT * FROM 等差三中d六 ORDER BY dcsz INTO CURSOR 等差三中升
BROWSE LAST
COPY TO d:\三生素数中项\等差3中升序.dbf
USE
ADD TABLE d:\三生素数中项\等差3中升序.dbf
USE 等差3中升序 AGAIN IN 0
SELECT 等差3中升序
BROWSE LAST
COUNT ALL for
COUNT ALL FOR dcsz<10^7 TO tj
?tj
GO 17194
USE

素数问题的解决是我学习编程永恒的动力。
2025-05-27 08:13
独木星空
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:河北省曲阳县
等 级:版主
威 望:71
帖 子:1312
专家分:683
注 册:2016-6-29
收藏
得分:0 
SELECT 1
USE d:\三生素数中项\等差3中元素.DBF ALIAS 等差元素
SELECT 2
USE d:\三生素数中项\等差三中和统计表.DBF ALIAS 等差三中和统计
kssj=SECONDS()
FOR i=1 TO 100
   @ 3,6 say i
      SELECT 1
      GO 1
      FOR j=1  TO  9
        SELECT 1
        PUBLIC a
         a=dcys
         m=30*(i-1)+a
         SELECT  2
         APPEND BLANK   
         REPLACE dcszh WITH m
         REPLACE tj2 WITH 0
         SELECT 1
         skip
     ENDFOR
ENDFOR
    =MESSAGEBOX("运行时间:"+LTRIM(STR(INT((SECONDS()-kssj)/60)))+"分"+LTRIM(STR(MOD(SECONDS()-kssj,60),5,2))+"秒",64,"运行时间提示")
给等差三中和统计表置数

素数问题的解决是我学习编程永恒的动力。
2025-05-27 11:59
独木星空
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:河北省曲阳县
等 级:版主
威 望:71
帖 子:1312
专家分:683
注 册:2016-6-29
收藏
得分:0 
SELECT 1
 USE d:\三生素数中项\等差3中升序.DBF ALIAS 等差3中表
 SELECT 2
 USE d:\三生素数中项\等差三中和统计表.DBF ALIAS 等差三中和统计
 kssj=SECONDS()
 SELECT 1
 GO 1 &&定位在第一个参与运算值上,本次运行交叉部分,外循坏取前段,内循环取后段,一次产生两组
 FOR i=1 TO 100
   @ 3,6 say i
   jl=recno()
   PUBLIC A
   A=dcsz
      SELECT 1
      GO 1
      FOR j=1  TO 9888
      PUBLIC B
      B=dcsz
      n=A+B
      c=n-INT((n-1)/30)*30
      d=INT((n-1)/30)*9
      IF c<21
      SELECT  2
      GO   INT(c/3)+d
      REPLACE tj2 WITH tj2+1
      ELSE
      SELECT  2
      GO 3+INT((c-10)/3)+d
      REPLACE tj2 WITH tj2+1
      ENDIF
      SELECT 1
      skip
      ENDFOR
      SELECT 1
      GO jl+1
 ENDFOR
    =MESSAGEBOX("运行时间:"+LTRIM(STR(INT((SECONDS()-kssj)/60)))+"分"+LTRIM(STR(MOD(SECONDS()-kssj,60),5,2))+"秒",64,"运行时间提示")
分配等差3生素数中项和结果

素数问题的解决是我学习编程永恒的动力。
2025-05-27 15:55
独木星空
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:河北省曲阳县
等 级:版主
威 望:71
帖 子:1312
专家分:683
注 册:2016-6-29
收藏
得分:0 
SELECT 1
 USE d:\三生素数中项\等差3中升序.DBF ALIAS 等差3中表
 SELECT 2
 USE d:\三生素数中项\等差三中和统计表.DBF ALIAS 等差三中和统计
 kssj=SECONDS()
 SELECT 1
 GO 101 &&定位在第一个参与运算值上,本次运行交叉部分,外循坏取前段,内循环取后段,一次产生两组
 FOR i=1 TO 9788
   @ 3,6 say i
   jl=recno()
   PUBLIC A
   A=dcsz
      SELECT 1
      GO 1
      FOR j=1  TO 9888
      PUBLIC B
      B=dcsz
      n=A+B
      c=n-INT((n-1)/30)*30
      d=INT((n-1)/30)*9
      IF c<21
      SELECT  2
      GO   INT(c/3)+d
      REPLACE tj2 WITH tj2+1
      ELSE
      SELECT  2
      GO 3+INT((c-10)/3)+d
      REPLACE tj2 WITH tj2+1
      ENDIF
      SELECT 1
      skip
      ENDFOR
      SELECT 1
      GO jl+1
 ENDFOR
    =MESSAGEBOX("运行时间:"+LTRIM(STR(INT((SECONDS()-kssj)/60)))+"分"+LTRIM(STR(MOD(SECONDS()-kssj,60),5,2))+"秒",64,"运行时间提示")

素数问题的解决是我学习编程永恒的动力。
2025-05-27 15:58
独木星空
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:河北省曲阳县
等 级:版主
威 望:71
帖 子:1312
专家分:683
注 册:2016-6-29
收藏
得分:0 
如何用vfp程序筛选出满足条件的记录条
网上搜索,AI给出的答案
在VFP中筛选满足条件的记录条,可以通过使用SQL命令、使用查询设计器、利用条件筛选命令等多种方法实现。
使用SQL命令
使用SQL命令是VFP中最常见且强大的一种数据筛选方法。SQL命令具有灵活性强、功能丰富等特点,可以实现复杂的数据筛选和操作1:

SELECT命令:SELECT命令是SQL中最基础的查询命令,用于从数据库中选取记录。例如,这条命令将从Customers表中选取所有Country字段值为USA的记录:SELECT * FROM Customers WHERE Country = 'USA'。
使用JOIN进行复杂查询:在实际应用中,经常需要从多个表中筛选数据。这时候可以用到JOIN操作符。例如,这条命令将选取所有来自USA的客户的订单信息:SELECT Orders.* FROM Orders JOIN Customers ON Orders.CustomerID = Customers.CustomerID WHERE Customers.Country = 'USA'。
使用查询设计器
查询设计器是VFP提供的一个可视化工具,允许用户通过拖拽和点击来设计查询。查询设计器适合不熟悉SQL语法的用户,它提供了一个直观的界面1:

创建基本查询:要创建一个基本查询,只需打开查询设计器,选择要查询的表,然后将需要的字段拖到查询窗口中。接着,可以在条件区域输入筛选条件,例如Country=‘USA’。
复杂查询设计:如果需要进行复杂查询,例如多表关联查询,可以在设计器中加入多个表,并通过拖拽表之间的关系线来定义表之间的关系。

素数问题的解决是我学习编程永恒的动力。
2025-05-28 08:51
独木星空
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:河北省曲阳县
等 级:版主
威 望:71
帖 子:1312
专家分:683
注 册:2016-6-29
收藏
得分:0 
SELECT 等差3中升序
BROWSE LAST
COUNT ALL FOR dcsz<5000000 TO tj
?tj
GO 9888
USE
USE 等差三中和统计表 AGAIN IN 0
SELECT 等差三中和统计表
BROWSE LAST
COUNT ALL FOR dcszh<5000000 TO tj
GO 1499900
USE
USE 等差三中和统计表 AGAIN IN 0
SELECT 等差三中和统计表
BROWSE LAST
SELECT * FROM 等差三中和统计表 WHERE tj2=0
COUNT ALL FOR dcszh<7000000 TO tj
?tj
GO 13119
COUNT ALL FOR dcszh 5000000 TO tj
COUNT ALL FOR dcszh<5000000 TO tj
?tj
GO 11859
GO 1
COPY TO d:\三生素数中项\等差3生素数中项五百万前无合成数.xls NEXT 11859 TYPE XL5
USE
USE 等差3中升序 AGAIN IN 0
SELECT 等差3中升序
BROWSE LAST
COUNT ALL FOR dcsz<10000000 TO tj
?tj
GO 17194
USE
USE 等差三中和统计表 AGAIN IN 0
SELECT 等差三中和统计表
BROWSE LAST
GO bottom
USE

素数问题的解决是我学习编程永恒的动力。
2025-05-28 09:05
独木星空
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:河北省曲阳县
等 级:版主
威 望:71
帖 子:1312
专家分:683
注 册:2016-6-29
收藏
得分:0 
SELECT 1
 USE d:\三生素数中项\等差3中升序.DBF ALIAS 等差3中表
 SELECT 2
 USE d:\三生素数中项\等差三中和统计表.DBF ALIAS 等差三中和统计
 kssj=SECONDS()
 SELECT 1
 GO 9889 &&定位在第一个参与运算值上,本次运行交叉部分,外循坏取前段,内循环取后段,一次产生两组
 FOR i=1 TO 7306
   @ 3,6 say i
   jl=recno()
   PUBLIC A
   A=dcsz
      SELECT 1
      GO 9889
      FOR j=1  TO 7306
      PUBLIC B
      B=dcsz
      n=A+B
      c=n-INT((n-1)/30)*30
      d=INT((n-1)/30)*9
      IF c<21
      SELECT  2
      GO   INT(c/3)+d
      REPLACE tj2 WITH tj2+1
      ELSE
      SELECT  2
      GO 3+INT((c-10)/3)+d
      REPLACE tj2 WITH tj2+1
      ENDIF
      SELECT 1
      skip
      ENDFOR
      SELECT 1
      GO jl+1
 ENDFOR
    =MESSAGEBOX("运行时间:"+LTRIM(STR(INT((SECONDS()-kssj)/60)))+"分"+LTRIM(STR(MOD(SECONDS()-kssj,60),5,2))+"秒",64,"运行时间提示")

素数问题的解决是我学习编程永恒的动力。
2025-05-28 09:11
独木星空
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:河北省曲阳县
等 级:版主
威 望:71
帖 子:1312
专家分:683
注 册:2016-6-29
收藏
得分:0 
SELECT 1
 USE d:\三生素数中项\等差3中升序.DBF ALIAS 等差3中表
 SELECT 2
 USE d:\三生素数中项\等差三中和统计表.DBF ALIAS 等差三中和统计
 kssj=SECONDS()
 SELECT 1
 GO 1 &&定位在第一个参与运算值上,本次运行交叉部分,外循坏取前段,内循环取后段,一次产生两组
 FOR i=1 TO 17194
   @ 9,6 say i
   jl=recno()
   PUBLIC A
   A=dcsz
      SELECT 1
      GO 17195
      FOR j=1  TO 3902
      PUBLIC B
      B=dcsz
      n=A+B
      c=n-INT((n-1)/30)*30
      d=INT((n-1)/30)*9
      IF c<21
      SELECT  2
      GO   INT(c/3)+d
      REPLACE tj2 WITH tj2+2 &&本次运行(a+b)的平方交叉部分
      ELSE
      SELECT  2
      GO 3+INT((c-10)/3)+d
      REPLACE tj2 WITH tj2+2 &&本次运行(a+b)的平方交叉部分
      ENDIF
      SELECT 1
      skip
      ENDFOR
      SELECT 1
      GO jl+1
 ENDFOR
    =MESSAGEBOX("运行时间:"+LTRIM(STR(INT((SECONDS()-kssj)/60)))+"分"+LTRIM(STR(MOD(SECONDS()-kssj,60),5,2))+"秒",64,"运行时间提示")

素数问题的解决是我学习编程永恒的动力。
2025-05-29 11:49
独木星空
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:河北省曲阳县
等 级:版主
威 望:71
帖 子:1312
专家分:683
注 册:2016-6-29
收藏
得分:0 
SELECT 1
USE d:\三生素数中项\等差3中元素.DBF ALIAS 等差元素
SELECT 2
USE d:\三生素数中项\等差三中和统计表.DBF ALIAS 等差三中和统计
kssj=SECONDS()
FOR i=666670 TO 1000003
   @ 3,6 say i
      SELECT 1
      GO 1
      FOR j=1  TO  9
        SELECT 1
        PUBLIC a
         a=dcys
         m=30*(i-1)+a
         SELECT  2
         APPEND BLANK   
         REPLACE dcszh WITH m
         REPLACE tj2 WITH 0
         SELECT 1
         skip
     ENDFOR
ENDFOR
    =MESSAGEBOX("运行时间:"+LTRIM(STR(INT((SECONDS()-kssj)/60)))+"分"+LTRIM(STR(MOD(SECONDS()-kssj,60),5,2))+"秒",64,"运行时间提示")

素数问题的解决是我学习编程永恒的动力。
2025-05-29 12:46
快速回复:简单的筛选二生素数程序
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.023888 second(s), 11 queries.
Copyright©2004-2025, BC-CN.NET, All Rights Reserved