#author("2020-06-12T13:16:41+09:00","default:Miyashita","Miyashita") #author("2020-06-12T13:18:49+09:00","default:Miyashita","Miyashita") *format 文あれこれ [#c16381c2] *** A [#s9489608] 文字列.a10とかでも良いし,単にaでも良かったり. *** E [#d84fc926] 出力の桁数にばらつきがあるとき指定子eが使える. #codeprettify(lang-fortran){{ format(e10.3) }} にすると, 0.2??E+05 にように整数部が必ず0になるので, #codeprettify(lang-fortran){{ format(1pe10.2) }} とかにすると, 2.??E+04 となって幅を節約できる.1pの1は1桁,pはパディングのp? *** F [#v25d4b4e] eより視覚的にわかりやすい.ただし指定した幅をオーバーすると"*****"とかになる.~ #codeprettify(lang-fortran){{ format(<nx>(f0.3)) }} などとすれば,小数点以下だけ固定になる.~ これだけだと隣とのデータの境がわからないので,カンマを区切りにするのもあり. #codeprettify(lang-fortran){{ format(<nx>(f0.3,',')) }} *** H [#j1b24c3d] ホレリスなんとか.文字列に関係するが,廃止なので使わないようにしよう.~ 古いコードを読まなくてはいけないときのために一応メモしておくと,~ "nH" (nは何らかの整数)をformat文に入れたときに,H以降のn文字分だけ,文字列として挿入する.~ #codeprettify(lang-fortran){{ format(7hABCDEFG) }} とすると,ABCDEFGという文字列が出力される.~ 入力文字に応じた文字数のカウントが大変だし面倒臭い. *** I [#h4a8aef9] 整数.使用頻度が高い.基本的なことは省略.~ 整数→文字列の変換で,余る桁を0で埋めたい時とかがよくある.日付をファイル名にするときなどなど.~ 整数INT=8を文字列strに"08"として格納したい時は 整数.使用頻度が高い.~ 基本的なことは省略.~ ~ 整数から文字列の変換で,余る桁を0で埋めたい時とかがよくあり,~ 例えば整数 INT=8 を文字列 str に"08"として格納したい時には #codeprettify(lang-fortran){{ write(str,'(I2.2)') INT }} とする.