| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 820 人关注过本帖
标题:求vfp等距抽样的小程序
只看楼主 加入收藏
zsh9898
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2012-5-15
收藏
得分:0 
还是以上问题,如果一张表中按班级不同有不同的抽样间隔,能实现吗,谢谢!!!!
2012-05-15 16:50
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:0 
回复 8楼 zsh9898
程序代码:
CREATE CURSOR TABNAME1 (序号 N(2),姓名 C(1),班级 C(20),成绩 N(3))
CREATE CURSOR TABNAME (序号 N(2),姓名 C(1),班级 C(20),成绩 N(3))
FOR I=1 TO 26
    INSERT INTO TABNAME VALUES (I,CHR(64+I),"初一("+TRANSFORM(IIF(MOD(I,3)=1,1,IIF(MOD(I,3)=2,2,3)))+")班",110+I)
ENDFOR
SELECT DISTINCT 班级 FROM TABNAME INTO ARRAY BJ &&查询共有几个班级
CSTR="683" &&用于查询不同班级(分别为1、23)学生的间隔
FOR I=1 TO ALEN(BJ)
    SELECT * FROM TABNAME WHERE AT(TRANSFORM(I),班级)>0 INTO CURSOR TABNAME2 &&从班级(1)开始查询
    BROWSE TITLE "初一("+TRANSFORM(IIF(MOD(I,3)=1,1,IIF(MOD(I,3)=2,2,3)))+")班学生情况查询表"
    IF VAL(SUBSTR(CSTR,I,1))<RECCOUNT("TABNAME2") && 判断间隔学生数是否小于TABNAME2表中的记录数
       SELECT * FROM TABNAME2 WHERE MOD(RECNO(),VAL(SUBSTR(CSTR,I,1))+1)=0 INTO ARRAY TEMP
       SELECT TABNAME1
       APPEND FROM ARRAY TEMP
    ENDIF
ENDFOR
BROWSE

坚守VFP最后的阵地
2012-05-15 16:56
zsh9898
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2012-5-15
收藏
得分:0 
太好了,我试试啊
2012-05-15 17:07
zsh9898
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2012-5-15
收藏
得分:0 
“CSTR="683" &&用于查询不同班级(分别为1、2、3)学生的间隔”,如果间隔为12、15等两位数,如何处理呢?
2012-05-16 10:02
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:0 
回复 14楼 zsh9898
12、15是那个班的
你用的
VFP6?
VFP9?
如果是VFP9简单,VFP6复杂些。
多看看VFP帮助中的字符型函数用法。

[ 本帖最后由 sdta 于 2012-5-16 19:54 编辑 ]

坚守VFP最后的阵地
2012-05-16 19:22
zsh9898
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2012-5-15
收藏
得分:0 
一共有176个班呢,每个班抽样间隔都不一样,都在两位数以上
2012-05-17 10:25
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:0 
回复 16楼 zsh9898
专门建个表,保存这些间隔
表结构:班级 C(20),间隔 C (2)
班级前后顺序不能乱
然后用下列代码将间隔保存为字符串
USE 间隔
LOCAL CJG
CSTR=""
SCAN
    CSTR=CSTR+间隔 &&生成间隔字符串
ENDSCAN
? CJG

*---------------------------------------------
前面的代码:SUBSTR(CSTR,I,1)
改为
SUBSTR(CSTR,I,2)

----------------------------------------------
具体情况还要具体处理

[ 本帖最后由 sdta 于 2012-5-17 10:54 编辑 ]

坚守VFP最后的阵地
2012-05-17 10:36
zsh9898
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2012-5-15
收藏
得分:0 
很好,谢谢啦
2012-05-24 14:20
快速回复:求vfp等距抽样的小程序
数据加载中...
 
   



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

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.026128 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved