为了账号安全,请及时绑定邮箱和手机立即绑定

perl 怎么计算数组中相同数字的个数

perl 怎么计算数组中相同数字的个数

慕容森 2019-04-12 11:06:06
#求Mr_A中每一列1,2,3,4,的个数,我编了一个小程序,有错误,但是不知道哪里错# N为 Mr_A的行数;$count=0;for (my $i=0; $i<=$N-1;$i++){while ($Mr_A[$i][0]==1){$count++;}}print “$count\n”;#以上程序是求数组Mr_A第一列中1的个数,不知道哪里错了 求大神、、我的意思就是统计每一列的1,2,3,4 的个数,上面这个程序是统计第一列1的个数,但是打印不出来,不知道有没有办法解决啊
查看完整描述

4 回答

?
婷婷同学_

TA贡献1844条经验 获得超8个赞

错在:
while ($Mr_A[$i][0]==1){
$count++;
}
因为 $Mr_A[$i][0] 如果是 = 1 的话, 那永远也是等於 1, 因为你在回路中没有改变过$Mr_A[$i][0] 的值, 所以就不可能跳出来了.

你可以这麼做的
foreach my $row ( 0.. $#Mr_A ) {
my %item;
foreach my $col ( @{$Mr_A{$row}} ) {
++$item{$col}
}
print "In Row $row: $/";
print "\tThere are $item{$_} of $_$/" foreach sort {$a<=>$b} keys %item;
print $/;

}



查看完整回答
反对 回复 2019-04-13
  • 4 回答
  • 0 关注
  • 1164 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信