ES 形編集

ES 形編集記述子は,科学表記の形を使って値を転送します。これは次の形式を取ります。

ESw.d[Ee]

d (小数点以下のけた数) に e (指数内のけた数) を加えた値は,w (欄幅) の値を超えてはなりません。

指定された I/O 並び項目は,実数型であるか,複素数型の実部または虚部でなくてはなりません。

入力処理の規則

入力時に ES 形編集記述子は,外部欄から w 個の文字を転送し,対応する I/O 並び項目にその実数値を代入します。ES 形編集記述子は,F 形編集記述子と同じように入力データを解釈し代入します (「F 形編集」を参照)。

次に,ES 形編集記述子を使った入力の例を示します ('^' は,空白文字を表しています)。

	書式		入力			
	ES11.3		 ^^5.321E+00		   5.32100
	ES11.3		  -6.000E-03		   -.60000
	ES12.3		^^^3.150E-03		    .00315
	ES12.3		^^^3.829E+03		3829.0

出力処理の規則

出力時に ES 形編集記述子は,右詰めされ,小数点以下 d けたに丸められた対応する I/O 並び項目の実数値を,w 文字の長さの外部欄に転送します。実数値は,有効数字の絶対値が 1 以上,10 未満である科学表記の形で出力されます (出力値がゼロの場合を除く)。

w は,以下のものを収容できるように,d + 7 以上の値でなくてはなりません。

指数は以下のいずれかの形式を取ります。

編集記述子 指数の絶対値 指数部の正の形式 指数部の負の形式
ESw.d |exp| <= 99 E+nn E-nn
99 < |exp| <= 999 +nnn -nnn
ESw.dEe |exp| <= 10e - 1 E+n1n2...ne E-n1n2...ne

指数値が大きすぎて,どの形式にも変換できない場合,エラーが発生します。

指数欄幅 (e) は省略可能です。これが省略された場合の値は 2 です。e が指定されている場合,wd + e + 5 以上でなくてはなりません。

次に,ES 形編集記述子を使った出力の例を示します ('^' は,空白文字を表しています)。

	書式					出力
	ES11.2		473214.356		^^^4.73E+05
	ES11.5		473214.356		4.73214E+05
	ES12.3		     0.00069		^^^6.900E-04
	ES10.3		    -0.5555		-5.555E-01
	ES11.2		     0.0		^0.000E+00

関連情報