Fortran Coder

标题: .v1和.v2 求第三边长 [打印本页]

作者: zlzshubao    时间: 2015-6-1 21:58
标题: .v1和.v2 求第三边长
有两个数据文件,分别是以.v1和.v2作为文件扩展名,里面是很复杂的数据,如下图所示:


现在想要求出两份类似文件的每个对应数据的平方和(相当于每两个对应数据是直角三角形两条直角边,求第三条边长),之后将结果存储在一个新的文件中。

Fortran小白求指导代码应该怎样编写~

谢谢~~

作者: fcode    时间: 2015-6-2 09:35
你的需求描述得不清楚,没法解答。

文件里各列是什么含义?哪些是你所需的?读出来之后,如何判断“对应”?
作者: zlzshubao    时间: 2015-6-2 22:11
fcode 发表于 2015-6-2 09:35
你的需求描述得不清楚,没法解答。

文件里各列是什么含义?哪些是你所需的?读出来之后,如何判断“对应” ...

谢谢您的回复。抱歉问题问的不清楚,我补充一下:
我有两个文件,打开均如上图所示,一堆数据,每一个数据都是一个时刻的某个方向的流速(两个文件分别是两个方向的流速),现在想要求两个文件中对应时刻的流速的合速度,也就是两个速度的平方和然后开根号,得到合速度。“对应”指的就是两个文件中的第一个数据对应第一个数据,第二个数据对应第二个数据……
之后将求得的合速度的数据文件单独存起来,成为一个新的dat或txt文件。
不知道有没有描述清楚,麻烦你啦~
作者: fcode    时间: 2015-6-2 22:50
[Fortran] 纯文本查看 复制代码
Program www_fcode_cn
  Implicit None
  Integer , parameter :: N = 20 !// 每行20个数
  Real :: a( N ) , b( N )
  Integer :: err
  Open( 12 , File = "a.v1" )
  Open( 13 , File = "b.v2" )
  Open( 14 , File = "c.v3" )
  Do
    Read( 12 , * , iostat = err ) a
    if ( err /= 0 ) exit
    Read( 13 , * , iostat = err ) b
    if ( err /= 0 ) exit
    Write( 14 , * ) sqrt( a*a + b*b )
  End Do
  Close( 12 )
  Close( 13 )
End Program www_fcode_cn

作者: zlzshubao    时间: 2015-6-3 21:24
fcode 发表于 2015-6-2 22:50
[mw_shl_code=fortran,true]Program www_fcode_cn
  Implicit None
  Integer , parameter :: N = 20 !//  ...


不知道为什么,还是有这样的错误





作者: fcode    时间: 2015-6-4 08:11
windows 的绝对路径大概是这个格式:
D:\\Adp_M2_1215to1218.v1

注意是冒号,不是分号。两个斜线 \\
最后,看错误提示要在黑色窗口看。你帖的最后一张图看似是错误,但其实不是(无视它)





欢迎光临 Fortran Coder (http://bbs.fcode.cn/) Powered by Discuz! X3.2