| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1586 人关注过本帖
标题:分组编程求解问题!
只看楼主 加入收藏
cxzbzgz
Rank: 8Rank: 8
来 自:云南楚雄
等 级:贵宾
威 望:24
帖 子:298
专家分:808
注 册:2012-6-15
收藏
得分:3 
能否把数据贴出来,程序并不复杂!

学习交流VFP,QQ:248561326。
2014-08-22 09:54
五毒外星人
Rank: 2
等 级:论坛游民
威 望:1
帖 子:59
专家分:87
注 册:2014-5-7
收藏
得分:0 
回复 11 楼 cxzbzgz
请按名次1、2、3、4、5、6、7、8、9、10,20、19、18、17、16、15、14、13、12、11,......蛇形循环分成10个班
分班.zip (6.25 KB)
,谢谢!

[ 本帖最后由 五毒外星人 于 2014-8-22 12:47 编辑 ]

虚心学习,不断进步!
2014-08-22 12:46
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:3 
笨办法
copy to b1 for (名次>=1 .and. 名次<=10 ) .or. (名次>=100 .and. 名次<=110) .or. (名次>=200 .and. 名次<=210)  .or. ( 名次>=300 .and. 名次<=310) .or. ( 名次>=400 .and. 名次<=410)
copy to b2 for (名次>=11 .and. 名次<=20 ) .or. (名次>=111 .and. 名次<=120) .or. (名次>=211 .and. 名次<=220)  .or. ( 名次>=311 .and. 名次<=320) .or. ( 名次>=411 .and. 名次<=420)
。。。
。。。
十条语句 十个班级

DO IT YOURSELF !
2014-08-22 13:57
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9842
专家分:27213
注 册:2012-2-5
收藏
得分:0 
程序代码:
Select *,Space(2) bz From 分班 Into Cursor Temp Readwrite 
cStr='0102030405060708091010090807060504030201'
For lnI=1 To Reccount()
    Go lnI
    Replace Bz With Substr(cStr,Iif(Mod(lnI,20)=0,20,Mod(lnI,20))*2-1,2)
Endfor 
*Browse 
Select * From Temp Order By Bz 

坚守VFP最后的阵地
2014-08-22 14:40
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10608
专家分:43186
注 册:2014-5-20
收藏
得分:0 
CREATE CURSOR TB (姓名 C(10), 名次 I, 班次 I)
APPEND FROM 分班.dbf
_S形分班(10)
GO TOP
BROWSE
RETURN

FUNCTION _S形分班(n班数)
    LOCAL n班次, a班次[n班数*2]
    FOR i =1 TO n班数
        a班次[i] = i
        a班次[n班数*2+1-i] = i
    ENDFOR
    n班次 = 1
    SCAN
        REPLACE 班次 WITH a班次[n班次]
        n班次 = IIF(n班次 < n班数*2, n班次 + 1, 1)
    ENDSCAN
ENDFUNC
2014-08-22 15:44
tlliqi
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:204
帖 子:15453
专家分:65956
注 册:2006-4-27
收藏
得分:3 
以下是引用吹水佬在2014-8-22 15:44:23的发言:

CREATE CURSOR TB (姓名 C(10), 名次 I, 班次 I)
APPEND FROM 分班.dbf
_S形分班(10)
GO TOP  
BROWSE
RETURN
 
FUNCTION _S形分班(n班数)
    LOCAL n班次, a班次[n班数*2]
    FOR i =1 TO n班数
        a班次 = i
        a班次[n班数*2+1-i] = i
    ENDFOR
    n班次 = 1
    SCAN  
        REPLACE 班次 WITH a班次[n班次]
        n班次 = IIF(n班次 < n班数*2, n班次 + 1, 1)
    ENDSCAN
ENDFUNC
测试可行
2014-08-22 16:08
五毒外星人
Rank: 2
等 级:论坛游民
威 望:1
帖 子:59
专家分:87
注 册:2014-5-7
收藏
得分:0 
回复 15 楼 吹水佬
在这里跪谢各位高手大侠了!

虚心学习,不断进步!
2014-08-25 07:39
快速回复:分组编程求解问题!
数据加载中...
 
   



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

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