24小时热门版块排行榜    

Znn3bq.jpeg
查看: 839  |  回复: 11

baoer3808

银虫 (小有名气)


[交流] 【求助】求程序

有32个.dat文件,每个文件里都有6列,291行,想把这32个文件中的第二列每行依次相加,我是刚接触fortran,请高手帮忙!
回复此楼

» 猜你喜欢

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

» 抢金币啦!回帖就可以得到:

查看全部散金贴

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

maomao1210

金虫 (正式写手)


baoer3808(金币+2):谢谢鼓励! 2010-12-17 20:43:32
引用回帖:
Originally posted by baoer3808 at 2010-12-17 16:34:46:
有32个.dat文件,每个文件里都有6列,291行,想把这32个文件中的第二列每行依次相加,我是刚接触fortran,请高手帮忙!

这个貌似不难,楼主,自己可以尝试着写写看嘛,
2楼2010-12-17 20:03:39
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

holmescn

金虫 (正式写手)


baoer3808(金币+4): 2010-12-17 20:43:50
你好,请帖点数据上来。
你在windows下还是在linux下?
原始数据用啥算得,还是实验数据?
3楼2010-12-17 20:21:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

baoer3808

银虫 (小有名气)


引用回帖:
Originally posted by baoer3808 at 2010-12-17 16:34:46:
有32个.dat文件,每个文件里都有6列,291行,想把这32个文件中的第二列每行依次相加,我是刚接触fortran,请高手帮忙!

自己是也试着写呢
4楼2010-12-17 20:29:11
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

baoer3808

银虫 (小有名气)


引用回帖:
Originally posted by holmescn at 2010-12-17 20:21:48:
你好,请帖点数据上来。
你在windows下还是在linux下?
原始数据用啥算得,还是实验数据?

window下

001.dat数据:
0.00000E+00  0.00000E+00  0.00000E+00  0.00000E+00  0.00000E+00  0.00000E+00
   6.89360E+00  9.16180E-01  2.28213E-01  1.81749E-01  1.63901E-01  1.52392E-01
···
···
···
1.99225E+03  4.63268E-08  3.18680E-04  4.77895E-04  6.92194E-04  8.87688E-04
   1.99914E+03  1.73764E-07  1.20017E-03  1.80074E-03  2.61430E-03  3.35970E-03
共291行

002.dat也是这样
5楼2010-12-17 20:41:40
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

holmescn

金虫 (正式写手)


★ ★ ★
余泽成(金币+3):辛苦了! 2010-12-18 18:38:47
baoer3808(金币+4): 2010-12-20 16:59:27
CODE:
program mysum
    implicit none
    real, dimension(6) :: array
    real :: s
    integer :: i, stat1, stat2
    character(len=255) :: filename
    s = 0
    array = 0
    open(100, file="list.txt")
    do
        read (100, '(A)', iostat = stat1), filename
        if(stat1 .ne. 0) exit
        if(len_trim(filename) .eq. 0) cycle
        print '(A)', trim(filename)
        open (200, file=trim(filename))
        do
            read (200 , '(5(ES11.5, 2X), ES11.5)', iostat = stat2), array
            if(stat2 .ne. 0) exit
            s = s + array(2)
        end do
        close(200)
    end do
    close(100)
    print '(A, ES11.5)', "SUM=", s
end program mysum

数据文件的名字都放在list.txt里,一个文件名一行
6楼2010-12-18 11:48:51
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

baoer3808

银虫 (小有名气)


引用回帖:
Originally posted by holmescn at 2010-12-18 11:48:51:
[code]
program mysum
    implicit none
    real, dimension(6) :: array
    real :: s
    integer :: i, stat1, stat2
    character(len=255) :: filename
    s = 0
    array = 0
    open(100, ...

不是所有的第二列相加,是所有
.dat文件的第二列每行依次相加,

最后得出的是一列291行的数据
7楼2010-12-21 11:29:35
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

holmescn

金虫 (正式写手)



小木虫(金币+0.5):给个红包,谢谢回帖交流
引用回帖:
Originally posted by baoer3808 at 2010-12-21 11:29:35:


不是所有的第二列相加,是所有
.dat文件的第二列每行依次相加,

最后得出的是一列291行的数据

不明白你啥意思,请举例说明
8楼2010-12-21 11:53:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

baoer3808

银虫 (小有名气)


引用回帖:
Originally posted by holmescn at 2010-12-21 11:53:45:



不明白你啥意思,请举例说明

比如:001.dat数据为第一行:1 2 3 4 5 6
                             第二行:7 8 9 10 11 12
                             第三行:13 14 15 16 17 18
                             ···
                             ···
共291行

002.dat 数据第一行:19 20 21 22 23 24
                  第二行:25 26 27 28 29 30
                  第三行:31 32 33 34 35 36
                  ···
                  ···
共291行


003.dat数据第一行:37 38 39 40 41 42
                第二行:43 44 45 46 47 48
                第三行:49 50 51 52 53 54
                 ···
                 ···
共291行         



也共32个dat文件

最后要的结果是001.dat的第一行第二列数据2加002.dat第一行第二列数据20加003.dat第一行第二列数据38


001.dat 的第二行行第二列数据8加002.dat第二行第二列数据26加003.dat第二行第二列数据44

·····
结果为:2+20+38=60
            8+26+44=78
          14+32+50=96
                 ····
                  ····
9楼2010-12-21 16:27:44
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

holmescn

金虫 (正式写手)



小木虫(金币+0.5):给个红包,谢谢回帖交流
CODE:
program mysum
    implicit none
    integer, parameter :: N = 291
    real, dimension(6) :: array
    real, dimension(N) :: s
    integer :: i, stat1, stat2
    character(len=255) :: filename
    s = 0
    array = 0
    open(100, file="list.txt")
    do
        read (100, '(A)', iostat = stat1), filename
        if(stat1 .ne. 0) exit
        if(len_trim(filename) .eq. 0) cycle
        print '(A)', trim(filename)
        open (200, file=trim(filename))
        do i = 1, N
            read (200 , '(5(ES11.5, 2X), ES11.5)', iostat = stat2), array
            if(stat2 .ne. 0) exit
            s(i) = s(i) + array(2)
        end do
        close(200)
    end do
    close(100)
    print '(ES11.5)', s
end program mysum

这回应该正确了。已经根据你给的数据进行的测试。
10楼2010-12-22 09:32:07
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

baoer3808

银虫 (小有名气)


引用回帖:
Originally posted by holmescn at 2010-12-22 09:32:07:
[code]
program mysum
    implicit none
    integer, parameter :: N = 291
    real, dimension(6) :: array
    real, dimension(N) :: s
    integer :: i, stat1, stat2
    character(len=255) ::  ...

能不能让结果最后让它写到一个文件里面
11楼2010-12-22 10:23:32
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

holmescn

金虫 (正式写手)



余泽成(金币+1):谢谢参与应助! 2010-12-24 16:09:10
运行的时候加一个重定向就OK了啊

mysum > result.txt
12楼2010-12-22 10:43:56
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 baoer3808 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 河北省自然科学基金 +5 Peterchao 2026-05-18 8/400 2026-05-24 11:58 by 晓晓爱翠翠
[基金申请] 西安交大新媒学院副院长用撤稿论文结题 +3 bjvtcliu 2026-05-24 5/250 2026-05-24 10:16 by kudofaye
[教师之家] 论文撤稿了 +3 bjvtcliu 2026-05-24 5/250 2026-05-24 10:06 by Equinoxhua
[教师之家] 某211大学教师把个人教师官方主页改成:我跑了我跑了我跑了!官宣跑路! +4 zju2000 2026-05-21 5/250 2026-05-24 09:35 by songwz
[考博] 26/27申博自荐 10+4 ZXW0202 2026-05-22 9/450 2026-05-24 08:47 by bjvtcliu
[硕博家园] 售SCI一区T0P文章,我:8.O.5.5.1.O.5.4,科目齐全,可+急 +3 hvkbtfonbv 2026-05-23 3/150 2026-05-24 08:01 by 9ps9vgkqva
[硕博家园] 售SCI一区T0P文章,我:8.O.5.5.1.O.5.4,科目齐全,可+急 +3 pmo95bazuy 2026-05-23 7/350 2026-05-24 06:35 by fpo5ljpv91
[基金申请] 揭秘青基评审内幕:几个A才能顺利中标 +3 国自然国社科中 2026-05-23 4/200 2026-05-23 15:37 by 2000zf36392
[基金申请] 青B发送上会通知了吗 +5 chemBioBro 2026-05-22 7/350 2026-05-23 12:35 by zhuifengzhy
[考博] 博士申请 +3 焦晓明 2026-05-21 3/150 2026-05-23 11:26 by mlc840311
[论文投稿] 投稿求助,期刊 +4 希冀,有书读 2026-05-20 8/400 2026-05-22 10:16 by 希冀,有书读
[文学芳草园] 献血感触 +7 呀呀好傻 2026-05-19 13/650 2026-05-21 20:15 by 呀呀好傻
[基金申请] 面上本子正文33页,违规吗?会被低分嘛? +14 1234567wang 2026-05-17 16/800 2026-05-21 17:58 by 脆脆的饼干
[基金申请] 国自然评分 +4 无名者登山 2026-05-20 5/250 2026-05-21 16:35 by swuq
[基金申请] 国自然上会要求 +7 无名者登山 2026-05-18 11/550 2026-05-21 15:50 by draco1987
[基金申请] 提交了我也来说说感想 +9 fummck 2026-05-20 10/500 2026-05-21 14:17 by draco1987
[有机交流] 反应很差,大量原料没有反应 5+3 Mr.Zot 2026-05-19 8/400 2026-05-20 22:19 by Equinoxhua
[考博] 如果工作了想读博,可以边工作边读全日制嘛? 30+3 铁达火车 2026-05-18 5/250 2026-05-20 09:33 by tfang
[考博] 博士申请 +5 星…… 2026-05-18 6/300 2026-05-18 23:49 by 糊糊涂涂好
[硕博家园] 我在等一个没有答案的答案 +3 Love_MH 2026-05-17 3/150 2026-05-18 02:22 by 竹林孤影
信息提示
请填处理意见