Fortran Coder

标题: 输出为1750254-6这种格式,求助 [打印本页]

作者: 1035326373    时间: 2014-10-10 09:53
标题: 输出为1750254-6这种格式,求助
我在用fortran处理数据后,需要输出数据。要求的输出的格式这样的:1750254-6,用科学计数法表示为:1.750254E+00,也就是说小数点和指数符号E没有了,指数部分减小了6个量级。
求详细解决办法,谢谢。


作者: fcode    时间: 2014-10-10 11:44
[Fortran] 纯文本查看 复制代码
Program www_fcode_cn
  Implicit none
  write( * , * ) W( 1.750254E+00 )

contains
  Character(len=9) Function W( r )
    real :: r
    character(len=11) :: t
    write( t , '(es11.6e1)' ) r*1e-6
    W = t(1:1) // t(3:8) // t(10:11)
  End Function W
End Program www_fcode_cn  

作者: 1035326373    时间: 2014-10-14 21:39
fcode 发表于 2014-10-10 11:44
[mw_shl_code=fortran,true]Program www_fcode_cn
  Implicit none
  write( * , * ) W( 1.750254E+00 )

非常感谢。。
作者: 1035326373    时间: 2014-10-16 15:18
fcode 发表于 2014-10-10 11:44
[mw_shl_code=fortran,true]Program www_fcode_cn
  Implicit none
  write( * , * ) W( 1.750254E+00 )

如果要将转换后的数值写成二进制的形式,不利用字符型变量,可以实现吗?
作者: 楚香饭    时间: 2014-10-16 15:48
二进制是无格式的,直接写就行了。输出成文本,则必须通过字符串变量




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