| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 576 人关注过本帖
标题:[求助]谁能帮我一起完成一个位置提序小功能的程序?
只看楼主 加入收藏
学习VB
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2007-1-30
收藏
 问题点数:0 回复次数:9 
[求助]谁能帮我一起完成一个位置提序小功能的程序?


模型如下:
现在一文本文件,如何得到每期号码在其序中的位置提出来.号码最大值为14,最小值为01.比如2006221期
的号码02 08 10 14在第一行4-5=07 05 08 10 12 01 04 06 11 13 02 03 09 ,的位置是3 4 11.第二行的位置依次提出..依次类推,每期得到12行的位置序.

2006221:02 08 10 14
4-5=07 05 08 10 12 01 04 06 11 13 02 03 09 ,
4-5=04 09 11 01 03 05 13 06 07 10 12 14 02 08 ,
4-5=02 06 08 11 12 01 04 05 07 09 10 13 14 03 ,
4-5=14 01 08 13 02 03 06 07 09 10 ,
4-5=01 05 06 10 13 02 04 09 11 12 14 03 07 08 ,
4-5=04 13 01 10 14 02 05 06 07 08 09 12 03 ,
4-5=05 11 06 07 08 09 02 13 01 03 04 10 12 14 ,
4-5=02 04 12 01 03 06 10 11 14 05 07 08 09 13 ,
4-5=05 07 10 06 12 13 04 09 11 14 01 02 03 08 ,
4-5=04 01 02 05 06 13 07 09 11 14 03 08 12 10 ,
4-5=14 02 12 13 06 08 11 01 04 09 07 10 ,
4-5=08 01 02 06 07 09 11 10 12 14 ,
2006220:01 08 09 12
4-5=12 07 05 10 02 04 06 11 13 01 03 09 08 ,
4-5=09 01 04 08 11 03 05 13 02 06 07 10 14 12 ,
4-5=02 06 11 04 08 12 05 10 13 14 01 07 09 03 ,
4-5=01 14 08 09 13 02 03 06 07 10 12 ,
4-5=04 06 12 10 14 01 02 05 08 11 ,
4-5=10 13 01 05 07 02 06 09 11 03 04 08 14 ,
4-5=04 08 05 07 11 12 14 01 06 09 13 ,
4-5=03 06 02 09 10 01 05 11 12 13 04 07 14 ,
4-5=02 03 05 06 07 12 04 10 13 09 11 01 08 14 ,
4-5=04 06 11 02 05 10 14 01 08 09 12 03 07 13 ,
4-5=13 09 12 01 08 14 06 11 02 04 05 ,
4-5=08 01 02 14 09 07 11 04 06 10 12 ,
2006219:04 12 13 14
4-5=07 05 10 02 06 11 01 03 08 09 12 13 04 14 ,
4-5=04 09 13 01 11 03 05 02 06 07 08 10 12 14 ,
4-5=06 11 12 02 08 04 10 13 14 01 05 07 09 03 ,
4-5=14 01 08 09 13 02 03 04 06 07 10 12 ,
4-5=02 05 07 12 06 11 01 04 09 10 13 14 ,
4-5=04 06 10 01 08 14 07 09 11 03 05 13 ,
4-5=13 01 02 05 12 03 06 08 10 04 07 14 ,
4-5=09 11 03 04 06 07 08 10 12 14 01 05 13 ,
4-5=02 05 06 03 07 12 13 10 11 04 14 01 08 09 ,
4-5=04 01 06 10 05 07 08 11 12 09 13 ,
4-5=08 09 14 02 12 04 06 13 01 11 03 07 ,
4-5=13 11 01 14 02 04 06 07 08 09 12 ,
2006218:02 06 10 11
4-5=07 05 02 13 01 03 06 08 09 10 12 04 11 14 ,
4-5=04 11 09 13 01 02 03 05 10 06 07 08 12 14 ,
4-5=06 12 08 10 11 13 14 01 02 04 05 09 03 07 ,
4-5=14 01 02 06 08 09 03 04 07 10 11 12 13 ,
4-5=05 13 04 08 14 01 02 03 07 09 10 11 12 ,
4-5=10 04 07 12 01 02 06 13 03 08 11 05 09 14 ,
4-5=01 06 13 02 05 08 09 10 12 14 03 04 11 ,
4-5=04 05 09 06 07 11 01 03 08 10 12 13 14 ,
4-5=04 02 05 10 03 08 07 11 12 01 06 09 13 14 ,
4-5=06 12 04 13 01 05 07 08 10 03 09 11 14 ,
4-5=09 01 02 08 13 11 12 14 04 06 10 03 07 ,
4-5=06 08 11 14 01 02 04 09 12 13 ,
2006217:05 06 07 12
4-5=05 13 02 07 09 01 03 08 10 12 04 11 14 ,
4-5=04 11 07 01 06 13 02 03 09 10 05 08 12 14 ,
4-5=06 08 10 11 12 14 01 04 05 09 13 02 03 07 ,
4-5=14 01 06 02 08 09 12 03 04 07 10 11 13 ,
4-5=13 02 04 08 10 01 03 05 14 07 09 11 12 ,
4-5=01 02 05 09 10 12 03 04 07 13 06 08 11 14 ,
4-5=05 06 12 10 01 04 07 08 09 11 13 03 ,
4-5=14 04 06 11 13 02 08 01 05 07 09 10 12 ,
4-5=10 04 05 08 07 12 03 13 14 01 02 06 09 ,
4-5=09 01 04 13 02 05 07 08 11 12 06 14 ,
4-5=06 12 11 10 14 01 02 03 04 07 08 13 09 ,
4-5=01 06 08 09 14 04 07 11 12 ,
2006216:02 03 10 14
4-5=05 13 02 03 09 01 07 10 14 06 08 12 04 11 ,
4-5=04 11 07 01 10 13 03 06 05 08 09 12 02 14 ,
4-5=08 09 10 11 12 14 02 06 01 04 05 13 03 07 ,
4-5=14 01 06 02 08 12 03 04 07 11 13 ,
4-5=09 08 12 01 04 07 10 13 05 06 11 14 ,
4-5=05 02 13 03 04 01 06 10 14 07 08 09 11 12 ,
4-5=07 12 08 05 06 09 11 13 02 03 04 10 14 ,
4-5=04 10 01 11 14 06 13 02 03 05 09 12 ,
4-5=10 02 05 08 13 01 04 09 03 07 11 12 06 ,
4-5=12 04 06 07 13 01 02 09 14 05 11 ,
4-5=06 11 01 04 08 10 07 02 03 09 12 13 14 ,
4-5=14 08 02 01 03 09 11 12 ,
2006215:03 10 11 14
4-5=05 13 02 03 09 01 06 07 08 10 11 12 04 14 ,
4-5=04 07 01 03 10 13 06 11 05 08 09 12 14 02 ,
4-5=10 08 09 11 12 02 14 01 03 04 05 06 13 07 ,
4-5=14 01 06 02 11 12 04 07 08 13 ,
4-5=09 06 01 04 05 08 10 13 02 07 11 12 ,
4-5=02 03 05 01 07 13 12 04 06 08 10 11 14 ,
4-5=10 12 04 05 11 13 14 03 07 08 09 02 06 ,
4-5=04 06 01 08 09 10 11 13 02 05 07 12 14 ,
4-5=02 01 05 06 10 13 03 04 07 09 11 12 08 ,
4-5=12 04 07 10 02 08 09 13 01 06 11 ,
4-5=11 01 04 06 07 10 14 03 05 08 12 13 ,
4-5=08 14 12 01 02 03 04 10 11 ,
2006214:03 10 13 14
4-5=05 02 06 09 10 01 03 07 08 11 13 12 04 ,
4-5=04 03 07 13 01 11 14 05 06 08 09 10 12 02 ,
4-5=10 08 09 11 12 14 02 06 13 01 03 04 05 07 ,
4-5=14 01 02 06 11 12 04 07 08 13 ,
4-5=09 13 01 08 06 10 02 03 04 05 07 11 12 ,
4-5=02 01 03 05 07 08 10 12 13 04 06 11 14 ,
4-5=05 10 04 11 12 14 02 03 07 09 13 06 08 ,
4-5=04 01 08 09 12 13 02 05 07 10 11 ,
4-5=05 02 10 13 01 03 06 07 08 09 11 04 12 ,
4-5=02 07 10 12 13 01 04 09 08 11 ,
4-5=01 04 11 06 07 10 12 13 14 03 05 08 ,
4-5=08 11 14 01 06 12 02 03 04 10 13 ,
2006213:01 04 05 11
4-5=05 02 06 10 07 08 13 01 03 04 09 11 12 ,
4-5=03 07 13 04 01 11 14 08 09 10 12 02 06 05 ,
4-5=10 01 04 08 09 11 12 14 02 06 13 03 05 07 ,
4-5=14 01 11 02 06 12 04 05 07 08 13 ,
4-5=08 02 05 09 01 03 04 06 10 11 13 ,
4-5=01 03 05 07 10 12 13 02 08 09 11 14 ,
4-5=05 02 09 13 04 12 14 01 03 06 07 08 10 ,
4-5=04 10 11 12 14 02 06 07 01 03 08 09 13 ,
4-5=05 09 13 01 02 07 08 10 12 03 04 11 ,
4-5=02 10 06 07 08 13 03 04 11 12 ,
4-5=01 04 07 12 14 13 02 03 05 10 11 ,
4-5=01 11 04 06 08 12 14 02 07 09 10 13 ,
2006212:04 05 07 12
4-5=05 02 06 10 07 08 09 13 01 03 04 11 14 12 ,
4-5=03 13 04 07 01 09 11 08 10 02 05 06 12 14 ,
4-5=12 04 10 14 01 08 11 02 05 06 07 13 03 09 ,
4-5=14 01 11 02 06 12 04 05 08 13 ,
4-5=03 04 02 06 08 10 13 07 09 11 12 ,
4-5=03 05 09 01 13 06 08 04 07 10 11 12 14 ,
4-5=05 02 14 10 12 01 06 07 09 03 04 08 11 13 ,
4-5=04 02 14 05 07 08 10 11 12 13 ,
4-5=05 07 10 13 02 03 06 08 11 12 01 04 09 ,
4-5=05 02 08 03 04 07 10 12 13 01 06 11 14 ,
4-5=14 04 07 01 02 10 11 05 06 08 09 13 ,
4-5=01 12 06 02 04 07 08 10 11 13 14 ,

.......

请高手帮忙完现此功能.

搜索更多相关主题的帖子: 位置 
2007-01-31 10:49
学习VB
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2007-1-30
收藏
得分:0 

希望高手能帮一帮忙!在这里先谢了.

2007-01-31 11:54
Kendy123456
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:62
帖 子:2720
专家分:0
注 册:2007-1-3
收藏
得分:0 
ReadLine 一行一行的读...然后用字符串定位函数取就是了呀

每13行一个循环 :
1.取第1行的第10个字符开始 每隔3个字符取前2个, 取4次放到数组中
2从第2行到第13行
从第5个字符开始 For i=1 to 12 每次读取3个字符,取前2个和数组中的号码比较 如果一样就记录位置也就是i的值

完了

2007-01-31 14:13
学习VB
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2007-1-30
收藏
得分:0 

感谢楼上的朋友,我还是没明白你的用法.能在程序的基础上修改吗?
Private Sub Command1_Click()

CommonDialog1.ShowOpen
Dim files As String
files = CommonDialog1.FileName
Dim inbuf As String
Dim num As Integer
Open files For Input As #1 '打开文件
num = 0

Do While Not EOF(1) '获取文件行数
Line Input #1, inbuf
num = num + 1
Loop
Close #1
ReDim a(1 To num)
Open files For Input As #1

For i = 1 To num '将每行数据赋值给数组a
Input #1, a(i)
Next i
Close #1

End Sub
目前数组a中应放置了每行的数据了。如何完成要求的功能?望能补充!

2007-01-31 14:51
Kendy123456
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:62
帖 子:2720
专家分:0
注 册:2007-1-3
收藏
得分:0 
dim b(4) as string '' 存放每期号码
dim c(num)(5) as string ''每期最多4条记录 c(i)(1)存放期号 后4个存放号码

dim cnt as integer = 0, j as integer, k as integer


For i = 1 To num /13 '每13行为1期
if i mod 13 = 1 then ' 是每期的第一行吗
for j = 9 to 18 step 3
b((j -6) /3) = substring(a(i),j,2) '从第9个字符开始 每隔3个字符 取2个作为号码放到数组b中
c(cnt)(1) = left(a(i),7) ''存放期号
cnt += 1
next j
else
for j = 5 to 38 step 3
dim p as integer = 1
for k = 1 to 4
if substring(a(i),j,2) = b(k) then ''比较号码
c(cnt)(p) = j ''存放号码位置 ---如果1行记录中有5个号匹配 就会下标越界了!
p += 1
exit for
end if
next k
next j
end if
Next i

最后的结果就在数组c中了

实现应该就是这样 函数或者语法可能会有点问题

2007-01-31 15:56
学习VB
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2007-1-30
收藏
得分:0 

多谢了,的确语法可能有点问题,我先看看.

2007-01-31 17:06
taiji
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2007-1-31
收藏
得分:0 
用数据库吧

太极网络工作室城邀各路VB高手一起创业..有兴趣的高手们请加群:31556943
2007-02-01 00:27
学习VB
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2007-1-30
收藏
得分:0 

用五楼朋友的算法,SUBSTRING在VB中不能用,用MID代替,还是运行不通,大家看看,如何弄?

2007-02-01 12:07
Kendy123456
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:62
帖 子:2720
专家分:0
注 册:2007-1-3
收藏
得分:0 

是哪个地方出错了?


2007-02-01 13:29
学习VB
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2007-1-30
收藏
得分:0 
  b((j -6) /3) = mid(a(i),j,2) 这一条就运行出问题
2007-02-01 14:15
快速回复:[求助]谁能帮我一起完成一个位置提序小功能的程序?
数据加载中...
 
   



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

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