免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2354 | 回复: 9
打印 上一主题 下一主题

循环跳转到行号 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2015-08-11 12:55 |只看该作者 |倒序浏览
求助,如果一次循环读入两行,第一次循环读入1,2行,要使第二次循环读入2,3行,第三次循环读入3,4行该如何弄

论坛徽章:
46
15-16赛季CBA联赛之四川
日期:2018-03-27 11:59:132015年亚洲杯之沙特阿拉伯
日期:2015-04-11 17:31:45天蝎座
日期:2015-03-25 16:56:49双鱼座
日期:2015-03-25 16:56:30摩羯座
日期:2015-03-25 16:56:09巳蛇
日期:2015-03-25 16:55:30卯兔
日期:2015-03-25 16:54:29子鼠
日期:2015-03-25 16:53:59申猴
日期:2015-03-25 16:53:29寅虎
日期:2015-03-25 16:52:29羊年新春福章
日期:2015-03-25 16:51:212015亚冠之布里斯班狮吼
日期:2015-07-13 10:44:56
2 [报告]
发表于 2015-08-11 13:14 |只看该作者
动动脑子啊亲

论坛徽章:
0
3 [报告]
发表于 2015-08-11 13:16 |只看该作者
回复 2# zhlong8
自己弄的出来就不问了


   

论坛徽章:
0
4 [报告]
发表于 2015-08-11 13:17 |只看该作者
大神就告诉我一下啦
回复 2# zhlong8


   

论坛徽章:
46
15-16赛季CBA联赛之四川
日期:2018-03-27 11:59:132015年亚洲杯之沙特阿拉伯
日期:2015-04-11 17:31:45天蝎座
日期:2015-03-25 16:56:49双鱼座
日期:2015-03-25 16:56:30摩羯座
日期:2015-03-25 16:56:09巳蛇
日期:2015-03-25 16:55:30卯兔
日期:2015-03-25 16:54:29子鼠
日期:2015-03-25 16:53:59申猴
日期:2015-03-25 16:53:29寅虎
日期:2015-03-25 16:52:29羊年新春福章
日期:2015-03-25 16:51:212015亚冠之布里斯班狮吼
日期:2015-07-13 10:44:56
5 [报告]
发表于 2015-08-11 13:28 |只看该作者
my $a = <>;

while (<>) {
    my $b = $_;
    process($a, $b);
    $a = $b;
}

论坛徽章:
0
6 [报告]
发表于 2015-08-11 13:42 |只看该作者
出现这个错误Undefined subroutine &main::process called at filter1.pl line 10, <IN> line 1.
回复 5# zhlong8


   

论坛徽章:
46
15-16赛季CBA联赛之四川
日期:2018-03-27 11:59:132015年亚洲杯之沙特阿拉伯
日期:2015-04-11 17:31:45天蝎座
日期:2015-03-25 16:56:49双鱼座
日期:2015-03-25 16:56:30摩羯座
日期:2015-03-25 16:56:09巳蛇
日期:2015-03-25 16:55:30卯兔
日期:2015-03-25 16:54:29子鼠
日期:2015-03-25 16:53:59申猴
日期:2015-03-25 16:53:29寅虎
日期:2015-03-25 16:52:29羊年新春福章
日期:2015-03-25 16:51:212015亚冠之布里斯班狮吼
日期:2015-07-13 10:44:56
7 [报告]
发表于 2015-08-11 13:47 |只看该作者
回复 6# Li_0817


    $a, $b 就是你每次循环需要的那两行,想怎么处理(process)就这么处理,你又没告诉我你要干什么我就随便起个函数名啊

论坛徽章:
0
8 [报告]
发表于 2015-08-11 13:54 |只看该作者
回复 6# Li_0817
我把我想做的内容描述下,数据如下

data:
dh1 415999 416087 88 mk13 27171804 27171716 88
dh1 508761 508885 124 mk23 6118561 6118693 132
dh1 875647 875809 162 mk4 7639071 7638910 161
dh1 875654 875809 155 mk17 25417195 25417350 155
dh1 875665 875810 145 mk17 29163701 29163846 145
dh1 875665 875810 145 mk5 26725654 26725799 145
dh1 875672 875810 138 mk14 28336193 28336331 138
dh1 875686 875809 123 mk13 6776767 6776644 123
dh2 875693 875809 116 mk12 5953120 5953004 116
dh2 875705 875809 104 mk6 4434342 4434446 104

首先,如果第1列相同,下一行的第2列比上一行第3列大,则全部打印出所有行,如果第1列相同,下一行的第2列比上一行的第3列小,并且下一行的第4列比上一行的第4列小,则打印上一行,如果下一行的第4列比上一行的第4列大,则打印下一行。
最终想要的结果如下

result:
dh1 415999 416087 88 mk13 27171804 27171716 88
dh1 508761 508885 124 mk23 6118561 6118693 132
dh1 875647 875809 162 mk4 7639071 7638910 161
dh2 875693 875809 116 mk12 5953120 5953004 116
   

论坛徽章:
95
程序设计版块每日发帖之星
日期:2015-09-05 06:20:00程序设计版块每日发帖之星
日期:2015-09-17 06:20:00程序设计版块每日发帖之星
日期:2015-09-18 06:20:002015亚冠之阿尔艾因
日期:2015-09-18 10:35:08月度论坛发贴之星
日期:2015-09-30 22:25:002015亚冠之阿尔沙巴布
日期:2015-10-03 08:57:39程序设计版块每日发帖之星
日期:2015-10-05 06:20:00每日论坛发贴之星
日期:2015-10-05 06:20:002015年亚冠纪念徽章
日期:2015-10-06 10:06:482015亚冠之塔什干棉农
日期:2015-10-19 19:43:35程序设计版块每日发帖之星
日期:2015-10-21 06:20:00每日论坛发贴之星
日期:2015-09-14 06:20:00
9 [报告]
发表于 2015-08-11 19:04 |只看该作者
回复 8# Li_0817


    你自己按照这个规则把示例程序中的 process 实现了不就完了?

论坛徽章:
1
羊年新春福章
日期:2015-04-28 20:40:58
10 [报告]
发表于 2015-08-18 10:31 |只看该作者
数字太大了,看着揪心~我帮你顶一下,等别人帮你写吧~回复 1# Li_0817


   
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP