G 形編集記述子は,実数型の値を汎用的に転送します。任意の組込み型の値を転送するのに使用することができます。これは次の形式を取ります。
Gw.d[Ee]
d (小数点以下のけた数) に e (指数内のけた数) を加えた値は,w (欄幅) の値を超えてはなりません。
指定された I/O 並び項目は,実数型であるか,複素数型の実部または虚部でなくてはなりません。
整数型,論理型,または文字型データの I/O を指定する場合,この編集記述子はそれぞれ Iw,Lw,および Aw と同じ規則に従い,d と e は効果を持ちません。
入力処理の規則
入力時に G 形編集記述子は,外部欄から w 個の文字を転送し,対応する I/O 並び項目にその実数値を代入します。G 形編集記述子は,F 形編集記述子と同じように入力データを解釈し代入します (「F 形編集」を参照)。
出力処理の規則
出力時に G 形編集記述子は,右詰めされ,小数点以下 d けたに丸められた対応する I/O 並び項目の実数値を,w 文字の長さの外部欄に転送します。
表:G 形編集の変換に対するデータの大きさの影響 | |
---|---|
データの大きさ | 対応する変換 |
0 < m < 0.1 - 0.5 x 10-d-1 | Ew.d[Ee] |
m = 0 | F(w - n).(d -1), n('b') |
0.1 - 0.5 x 10-d-1 <= m < 1 - 0.5 x 10-d | F(w - n).d, n('b') |
1 - 0.5 x 10-d <= m < 10 - 0.5 x 10-d+1 | F(w - n).(d -1), n('b') |
10 - 0.5 x 10-d+1 <= m < 100 - 0.5 x 10-d+2 | F(w - n).(d -2), n('b') |
|
|
|
|
|
|
10d-2 - 0.5 x 10-2 <= m < 10d-1 - 0.5 x 10-1 | F(w - n).1, n('b') |
10d-1 - 0.5 x 10-1 <= m < 10d - 0.5 | (w - n).0, n('b') |
m >= 10d - 0.5 | Ew.d[Ee] |
'b' は,空白の後に数値データ表現が続いたものです。Gw.d の場合,n('b') は 4 個の空白です。Gw.dEe の場合,n('b') は e + 2 個の空白です。
w は,以下のものを収容できるように,d + 7 以上の値でなくてはなりません。
符号 (値が正で,SP 形編集記述子が有効になっていない場合には省略可能)
小数点の左側に 1 けた
小数点
小数点の右側に d けた
4 けたまたは e + 2 けたの指数
e が指定されている場合,w は d + e + 5 以上でなくてはなりません。
次に,G 形編集記述子を使った出力と,対応する F 形編集記述子を使った出力を比較した例を示します ('^' は,空白文字を表しています)。
値 書式 G 形による出力 書式 F 形による出力 0.01234567 G13.6 ^0.123457E-01 F13.6 ^^^^^0.012346 -0.12345678 G13.6 -0.123457^^^^ F13.6 ^^^^-0.123457 1.23456789 G13.6 ^^1.23457^^^^ F13.6 ^^^^^1.234568 12.34567890 G13.6 ^^12.3457^^^^ F13.6 ^^^^12.345679 123.45678901 G13.6 ^^123.457^^^^ F13.6 ^^^123.456789 -1234.56789012 G13.6 ^-1234.57^^^^ F13.6 ^-1234.567890 12345.67890123 G13.6 ^^12345.7^^^^ F13.6 ^12345.678901 123456.78901234 G13.6 ^^123457.^^^^ F13.6 123456.789012 -1234567.89012345 G13.6 -0.123457E+07 F13.6 *************
関連情報
データ編集記述子の形式については,「データ編集記述子の形式」を参照してください。
数値編集の一般的な規則については,「数値編集の一般的な規則」を参照してください。
I 形編集記述子については,「I 形編集」を参照してください。
L 形編集記述子については,「論理型編集 (L 形)」を参照してください。
A 形編集記述子については,「文字型編集 (A 形)」を参照してください。
けた移動数については,「けた移動数編集 (P 形)」を参照してください。