| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 789 人关注过本帖
标题:大侠看看有什么错误,我是菜鸟
只看楼主 加入收藏
jinanshui
Rank: 2
等 级:论坛游民
帖 子:295
专家分:67
注 册:2009-10-6
结帖率:93.88%
收藏
已结贴  问题点数:20 回复次数:13 
大侠看看有什么错误,我是菜鸟
thisform.List1.clear
DIMENSION m(1,10)
FOR i=1 TO 77
FOR i=1 TO 35
thisform.List1.additem(ALLTRIM(STR(i)))
ENDFOR
FOR j=1 TO 5
m(1,1)=INT(RAND()*thisform.List1.ListCount+1)
c(i,j)=thisform.List1.list(m(1,1))
thisform.List1.removeitem(m(1,1))
ENDFOR
thisform.list1.clear   
ENDFOR
thisform.timer1.Enabled=.F.
2013-07-08 09:23
dzy123
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:5
帖 子:379
专家分:820
注 册:2013-4-18
收藏
得分:0 
thisform.List1.additem(ALLTRIM(STR(i,2)))
这样试下
2013-07-08 09:51
jinanshui
Rank: 2
等 级:论坛游民
帖 子:295
专家分:67
注 册:2009-10-6
收藏
得分:0 
以下是引用dzy123在2013-7-8 09:51:04的发言:

thisform.List1.additem(ALLTRIM(STR(i,2)))
这样试下
不是这里的错误,反应找不到变量。
2013-07-08 10:01
jinanshui
Rank: 2
等 级:论坛游民
帖 子:295
专家分:67
注 册:2009-10-6
收藏
得分:0 
思路是1.向thisform.List1加入35个数
2.从thisform.List1随机取一个数
3.从thisform.List1删去这个数
4,再从thisform.List1随机取一个数
5.再从thisform.List1删去这个数

连续5次取得五个数

2013-07-08 10:15
tlliqi
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:204
帖 子:15453
专家分:65956
注 册:2006-4-27
收藏
得分:0 
挂起 看下是哪问题
2013-07-08 11:36
jinanshui
Rank: 2
等 级:论坛游民
帖 子:295
专家分:67
注 册:2009-10-6
收藏
得分:0 
我又重新改了一下还不行,挂起说问题
thisform.List1.clear
DIMENSION m(1,10)
FOR i=1 TO 77
FOR i=1 TO 35
thisform.List1.additem(ALLTRIM(STR(i,2)))
ENDFOR
FOR j=1 TO 5
m(1,1)=INT(RAND()*thisform.List1.ListCount+1)
c(i,j)=thisform.List1.list(ALLTRIM(STR(m(1,1))))
thisform.List1.removeitem(ALLTRIM(STR(m(1,1))))
ENDFOR
thisform.list1.clear   
ENDFOR
thisform.timer1.Enabled=.F.
2013-07-08 15:41
wengjl
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:109
帖 子:2215
专家分:3882
注 册:2007-4-27
收藏
得分:10 
以下是引用jinanshui在2013-7-8 09:23:24的发言:

thisform.List1.clear
DIMENSION m(1,10)
FOR i=1 TO 77
FOR i=1 TO 35
thisform.List1.additem(ALLTRIM(STR(i)))
ENDFOR
FOR j=1 TO 5
m(1,1)=INT(RAND()*thisform.List1.ListCount+1)
c(i,j)=thisform.List1.list(m(1,1))
thisform.List1.removeitem(m(1,1))
ENDFOR
thisform.list1.clear   
ENDFOR
thisform.timer1.Enabled=.F.
第一次说变量从1到77,第二次说变量从1到35,是属于变量重复吧

[ 本帖最后由 wengjl 于 2013-7-8 16:20 编辑 ]

只求每天有一丁点儿的进步就可以了
2013-07-08 16:18
jinanshui
Rank: 2
等 级:论坛游民
帖 子:295
专家分:67
注 册:2009-10-6
收藏
得分:0 
以下是引用wengjl在2013-7-8 16:18:27的发言:

第一次说变量从1到77,第二次说变量从1到35,是属于变量重复吧
改成k了,还是找不到变量
2013-07-08 16:41
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9842
专家分:27213
注 册:2012-2-5
收藏
得分:10 
以下是引用jinanshui在2013-7-8 09:23:24的发言:

thisform.List1.clear
DIMENSION m(1,10)
FOR i=1 TO 77
FOR i=1 TO 35
thisform.List1.additem(ALLTRIM(STR(i)))
ENDFOR
FOR j=1 TO 5
m(1,1)=INT(RAND()*thisform.List1.ListCount+1)
c(i,j)=thisform.List1.list(m(1,1))
thisform.List1.removeitem(m(1,1))
ENDFOR
thisform.list1.clear   
ENDFOR
thisform.timer1.Enabled=.F.
楼主能说下这段代码的意思吗

坚守VFP最后的阵地
2013-07-08 19:51
jinanshui
Rank: 2
等 级:论坛游民
帖 子:295
专家分:67
注 册:2009-10-6
收藏
得分:0 
在timer下启动
thisform.List1.clear    清空列表框
DIMENSION m(1,10)       声明变量
FOR i=1 TO 77          取77组数
FOR i=1 TO 35
thisform.List1.additem(ALLTRIM(STR(i)))
ENDFOR             给列表框注入1---35共35个整数
FOR j=1 TO 5       准备取五个随机数
m(1,1)=INT(RAND()*thisform.List1.ListCount+1) 随机选取一个数(1到列表框的列数)赋给 m(1,1)
c(i,j)=thisform.List1.list(m(1,1))        将列表框中的第m(1,1)列数赋给c(i,j),c(i,j)在开始按钮下已声明。

thisform.List1.removeitem(m(1,1))        将列表框中的第m(1,1)列数清空
ENDFOR
thisform.list1.clear   取完五个数后将列表框全部清空。  
ENDFOR
thisform.timer1.Enabled=.F.取完77组数后timer停止


[ 本帖最后由 jinanshui 于 2013-7-9 08:07 编辑 ]
2013-07-09 05:58
快速回复:大侠看看有什么错误,我是菜鸟
数据加载中...
 
   



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

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