Fortran Coder

读取一组数,计算后结果为零

查看数: 9302 | 评论数: 1 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2017-3-3 11:22

正文摘要:

对不起,菜鸟从中间起步,不懂的太多,求教: 读取csv格式文件,并进行计算,最后输出CSV格式文件,但是输出数据为0,应该是读取数据 的问题,但是我不知道怎么改, 数据如图:      数据共48 ...

回复

vvt 发表于 2017-3-3 13:03:04
第一步,请用记事本打开 farm_fm.csv 文件,删除其中全部的百分号
第二步,用以下代码:

[Fortran] 纯文本查看 复制代码
01program main
02 implicit none
03 integer i,j
04 integer ::k
05 integer ::b,c
06 real ::a(48,11)
07 real l,m,n,o,p,q,r_fm,s_at,t
08 open(12 , file ="/home/iga_qtong/fortran_xcao/farm/farm_fm.csv")
09 open(13 , file ="/home/iga_qtong/fortran_xcao/farm/farmout.csv")
10                                                                 !  read(12,*) a(i,j)
11 read(12,*) ((a(i,j), j=1,c),i=1,b)
12    do
13    read(12,*,iostat=k) a(48,11)
14    if (k/=0) exit
15    do i=1,48
16    do j=1,11
17    l=a(i,1)*a(i,2)*a(i,3)
18    m=a(i,1)*a(i,2)*a(i,4)
19    n=l/a(i,5)
20    o=m/a(i,6)
21    p=n*a(i,7)*a(i,8)
22    q=o*a(i,7)*a(i,9)
23    r_fm=p*a(i,10)*10
24    s_at=q*a(i,11)*10
25    t=r_fm+s_at
26   write(13,*) l,',',m,',',n,',',o,',',p,',',
27&       q,',',r_fm,',',s_at,',',t
28  end do
29  end do
30  end do
31 close(12)
32 close(13)
33 end program main

捐赠本站|Archiver|关于我们 About Us|小黑屋|Fcode ( 京ICP备18005632-2号 )

GMT+8, 2025-5-6 13:02

Powered by Discuz! X3.4

© 2013-2025 Comsenz Inc.

快速回复 返回顶部 返回列表