免费注册 查看新帖 |

Chinaunix

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

请问如何快速生成如下格式文件? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-06-19 01:13 |只看该作者 |倒序浏览
文件格式(50行*50列),且数值(实型或整型)大小都是其位置的函数,即:

   f(1,1)    f(1,2)   f(1,3)   .....    f(1,50)
    f(2,1)    f(2,2)    f(2,3)   .....    f(2,50)
    .......................
   f(50,1)   f(50,2)  f(50,3) .....   f(50,50)

我学的是fortran语言,很容易实现;但是不知道能不能用shell实现?哪位高手请指点一二,谢谢!

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
2 [报告]
发表于 2005-06-19 01:19 |只看该作者

请问如何快速生成如下格式文件?

try:

  1. #!perl -w
  2. use strict;
  3. foreach my $i (1..50){
  4.         foreach my $j (1..50){
  5.                 print "f($i,$j) ";
  6.         }
  7.         print "\n";
  8. }
复制代码

论坛徽章:
0
3 [报告]
发表于 2005-06-19 09:21 |只看该作者

请问如何快速生成如下格式文件?

  1. #!/bin/ksh -p
  2. for ((i=1; i<=50; i=i+1)); do
  3.     for ((j=1; j<50; j=j+1)); do
  4.         echo -n "f($i, $j) "
  5.     done
  6.     echo "f($i, 50)"
  7. done
复制代码

论坛徽章:
0
4 [报告]
发表于 2005-06-19 09:45 |只看该作者

请问如何快速生成如下格式文件?

awk也可以很简单的实现:

awk 'BEGIN {
    for( x = 1; x <=50; x++){
        for(y = 1; y <= 50; y++)
            printf("f(%s,%s) ", x, y)
        printf("\n"
    }
}'

论坛徽章:
0
5 [报告]
发表于 2005-06-19 16:17 |只看该作者

请问如何快速生成如下格式文件?

看来是我没有说清楚,大家都没理解我的意思。f(i,j) 是一个数字而不是字符“f(i,j)”,它是i和j的函数,就是不同位置的数字是不同的,可以理解为一个海域的水深数据,看起来应该象:
     5  7   10    12   10  20  25  ...
     3   6   12   15   15  18  20  ...
     4   7   11   18   19   25 30  ...


这样该如何用shell实现?谢谢!

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
6 [报告]
发表于 2005-06-19 17:52 |只看该作者

请问如何快速生成如下格式文件?

原帖由 "guoliangbo" 发表:


这样该如何用shell实现?谢谢!

论坛徽章:
0
7 [报告]
发表于 2005-06-19 19:01 |只看该作者

请问如何快速生成如下格式文件?

数据源在哪?或者函数解析式在哪?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP