24小时热门版块排行榜    

查看: 1710  |  回复: 13
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

astringent

铜虫 (著名写手)


[交流] 【求助】50金币求大家帮忙改一段程序

有一组数据如下所示,第一列代表istep变化范围(1-5000),第二列ia(1-30000),第三列ib(1-800),现在我想用一个三维数组H(istep,ia,ib)来标记这些数据,同一行数字定义的H=1,其他的H均为0.也就是说当istep=1时,ia=781,ib=455时H=1。我的主要目的就是能够将istep,ia,ib用一个函数联系起来,因为在程序后面要用这个函数作为进一步的判断条件。我写了一个程序:
program exam
implicit none
integer ia,ib,istep
integer ::h(5000,30000,800)
integer i



h=0
open (10,file='test.out')
do i=1,99999999
     read(10,*,end=2,err=2) istep,ia,ib
     h(istep,ia,ib)=1
enddo
2 continue
close(10)
do ia=1,30000
    do ib=1,800
         do istep=1,5000
              h(istep)=h(istep,ia,ib)
          enddo
         do ntel=1,nsteps
              if(h(ntel)/=0) then
                进行后面的程序
                -----------------
               endif
         enddo
         enddo
enddo
end
但是现在的问题是,定义的三维数组h太大了,程序不能运行, 请大家帮忙看看应该怎么办?先谢了

数据:
1     758           22
1     820           245
1     2050         399
1     2587         232
1     15733       34
1     18193       65
1     20718       256
2      820           245
2     2050         399
2      2587         232
2     20251        125
3     758           22
3     820           245
3     1817          625
3     2050          399
3     16723        555
3     18193       65
3     20718       256
---
----
----
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

mplanck

至尊木虫 (职业作家)


astringent(金币+5): 2011-04-25 19:59:27
astringent(金币+5): 2011-04-25 20:08:33
粗略一看,没懂你的意思。
你设的数组那么大,内存至少得10G以上,不能运行很正常...
4楼2011-03-28 23:54:35
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 14 个回答

astringent

铜虫 (著名写手)


引用回帖:
Originally posted by mplanck at 2011-03-28 23:54:35:
粗略一看,没懂你的意思。
你设的数组那么大,内存至少得10G以上,不能运行很正常...

以我的第一行数据 1     758           22 为例,1代表istep,758代表ia,22代表ib。 我想用函数将istep,ia,ib联系起来,只有当取我数据中一行上的数字时,定义的函数h=1,其他的h均为0.以第一行为例, istep=1,ia= 758,ib=22时,h=1.或者用多个函数也行,只要能完成后面循环中判断( if(h(ntel)/=0) then)就行。
do ia=1,30000
    do ib=1,800
         do istep=1,5000
              h(istep)=h(istep,ia,ib)
          enddo
         do ntel=1,nsteps
              if(h(ntel)/=0) then
                进行后面的程序
                -----------------
               endif
         enddo
         enddo
enddo
5楼2011-03-29 03:05:47
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zhuwei04

木虫 (正式写手)


astringent(金币+5): 2011-04-25 20:08:44
给个能读的数据文件,我试试
另外,你的nstep是什么东西?

[ Last edited by zhuwei04 on 2011-3-29 at 16:00 ]
6楼2011-03-29 15:16:15
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

astringent

铜虫 (著名写手)


引用回帖:
Originally posted by zhuwei04 at 2011-03-29 15:16:15:
给个能读的数据文件,我试试
另外,你的nstep是什么东西?

[ Last edited by zhuwei04 on 2011-3-29 at 16:00 ]

nstep可以写成5000,
对我的文件(new_total.out)的说明:
文件的格式为默认写入格式。
第一列代表ia,第二列ib,第三列istep(变化范围1-5000)
文件所在网址:http://good.gd/1078236.htm

[ Last edited by astringent on 2011-3-30 at 05:47 ]
7楼2011-03-30 05:44:34
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[硕博家园] 售SCI一区文章,我:8.O.551.O.5.4,科目全,可伽急 +3 0XLacIJUOj8D 2026-08-24 7/350 2026-08-25 03:24 by BZKMTicpDhFj
[考博] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +3 0XLacIJUOj8D 2026-08-24 3/150 2026-08-25 01:47 by BZKMTicpDhFj
[基金申请] 明天应该可查了!? +5 chengyan1220 2026-08-23 5/250 2026-08-24 23:28 by 我4大白菜
[基金申请] 没有任何消息-是不是就凉了 +7 图啦图啦 2026-08-24 8/400 2026-08-24 22:00 by maomao_da
[基金申请] 我面上完蛋了 +9 且听虎啸 2026-08-20 10/500 2026-08-24 20:08 by 苦寒来香
[基金申请] 能否退出参与的面上项目解除限项 +21 koalala 2026-08-24 24/1200 2026-08-24 19:25 by 家与远方
[基金申请] filecode,4个jtjc了 +14 ziyangfang 2026-08-19 17/850 2026-08-24 18:37 by 哈哈蛤?
[基金申请] 建议基金发布提前给出明确的时间点 +13 kulium 2026-08-21 16/800 2026-08-24 16:27 by superceng
[基金申请] 估计是周四 +4 archvillain 2026-08-18 4/200 2026-08-24 13:53 by zzuzxg
[基金申请] 朋友圈看到的 +7 wangzilk 2026-08-18 9/450 2026-08-24 10:50 by cmrandy
[基金申请] 什么时候开奖? +10 CrisMessi 2026-08-18 11/550 2026-08-24 06:50 by 开心的小狮子
[基金申请] 2026年的国家社科基金项目通讯评审的新规则与新动向、新挑战 +4 process2012 2026-08-23 5/250 2026-08-23 19:58 by jurkat.1640
[教师之家] 跳槽后在研项目怎么办? +5 简单化xn 2026-08-22 10/500 2026-08-23 12:38 by 简单化xn
[基金申请] 今天放榜吗? +15 布布和一二 2026-08-19 16/800 2026-08-23 09:55 by 张春生
[基金申请] 时间戳今天,20号变了 +5 archvillain 2026-08-20 5/250 2026-08-22 06:12 by hui_daxiao
[基金申请] 时间戳又变了 +13 wuchongjun 2026-08-20 19/950 2026-08-21 17:21 by 紫杉醇
[基金申请] 应该是下周三26日公布了吧? +4 哈哈蛤? 2026-08-21 4/200 2026-08-21 10:58 by Vivilian
[基金申请] 今天放榜没戏了吧 +9 yuleib84 2026-08-19 11/550 2026-08-21 10:06 by gltch
[基金申请] 重要消息,中午系统在维护 +11 yuleib84 2026-08-18 12/600 2026-08-20 11:09 by xskun
[基金申请] 明天放榜? +5 Shxjjxjkx 2026-08-18 5/250 2026-08-18 18:14 by -大大大大大-
信息提示
请填处理意见