免费注册 查看新帖 |

Chinaunix

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

如何定义、读、写、打印三维数组呢? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2013-08-04 22:08 |只看该作者 |倒序浏览
本帖最后由 buxoman 于 2013-08-06 21:38 编辑

对照着Programming Perl电子书,整了半天也没整出来,郁闷……

请高人指点
=======================================

很抱歉,说的太模糊了。下面我仔细描述一下我的想法。
-------------------------------------------------------------

我需要一个三维数组。第1维是固定64个元素,第2维是固定12个元素,第3维是固定2个元素。
形式如下:
@array[64][12][2].

我希望将第3维的2个元素初始化为(1000, 0),作为一个[min,max]范围来使用。

在程序运行过程中,我会去更新第3维的两个元素,用一个新的数值去更新,目的是捕捉更小的min, 更大的max。

如果新的min值比已有的小,就更新;
如果新的max值比已有的大,就更新。

程序运行结束后,可以将这个三维数组打印出来进行观察。

==================================

  1. my @gpr = ();
  2. for (my $i = 0; $i < 64; ++$i) {
  3.     my @dim2array = ();
  4.     for (my $j = 0; $j < 12; ++$j) {
  5.         my @dim3array = (1000, 0);
  6.         push @dim2array, \@dim3array;
  7.     }
  8.     push @gpr, \@dim2array;
  9. }

  10. for (my $i = 0; $i < 64; ++$i) {
  11.         $gpr[$i][5][0] = 0;
  12.         $gpr[$i][5][1] = 1000;
  13. }

  14. for (my $i = 0; $i < 64; ++$i) {
  15.     print "r$i :\n";
  16.     for (my $j = 0; $j < 12; ++$j) {
  17.         print "    \( $gpr[$i][$j][0]  $gpr[$i][$j][1] \) \n";
  18.     }
  19. }

  20. exit;
复制代码

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
2 [报告]
发表于 2013-08-04 22:28 |只看该作者
回复 1# buxoman


   不是很理解什么意思。
  数组直接定义就行,个人认为是比C简洁的地方。打印就直接$A[][][]就行啊

论坛徽章:
3
未羊
日期:2013-11-18 15:17:06酉鸡
日期:2013-12-06 17:07:16天蝎座
日期:2014-06-11 12:37:07
3 [报告]
发表于 2013-08-05 10:10 |只看该作者
不是很明白你的中心思想是想表达什么?

你是想对数据进行操作呢,还是想实现某个功能呢?

如果是实现某个功能,就把自己写的代码贴出来才能让别人帮你改啊。。

论坛徽章:
7
戌狗
日期:2013-12-15 20:43:38技术图书徽章
日期:2014-03-05 01:33:12技术图书徽章
日期:2014-03-15 20:31:17未羊
日期:2014-03-25 23:48:20丑牛
日期:2014-04-07 22:37:44巳蛇
日期:2014-04-11 21:58:0915-16赛季CBA联赛之青岛
日期:2016-03-17 20:36:13
4 [报告]
发表于 2013-08-06 05:34 |只看该作者
这问题我纠结了一下午啊。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP