指数表記法
純粋な数字を表します。 次に例を示します。
10000000000 * 10000000000100000000000000000000.00000000001 * .000000000010.0000000000000000000001大きい数、小さい数どちらの場合にも、長い数値を
読みやすくするためと、極端な場合は実行できるようにするための両方について、
ある種の指数表記法は便利です。 指数表記は、単純な
形式では情報を誤解する可能性がある場合にも使用されます。
numeric digits 5
say 54321*54321長形式では 2950800000 と表示されます。
これは、明らかに間違いやすいので、結果は、2.9508E+9 として表されます。
E の後の整数は、その数値に適用される 10 の累乗を表します。 E は、大文字小文字どちらでもかまいません。
ユーザーには数値とは見えなくても、数値であるような特定の文字ストリングがあります。 例えば、指数表記の数値のフォーマット
であるため、0E123 (0 掛ける 10 の 123 乗) と 1E342 (1
掛ける 10 の 342 乗) というストリングは数値です。 さらにまた、
0E123=0E567 という比較は、1 (0 は 0 に等しい) という
真の結果になります。
非数値のストリングを比較するときは、問題を避けるために厳密比較演算子を
使用してください。
12E7 = 120000000 /* Displays "1" */
12E-5 = 0.00012 /* Displays "1" */
-12e4 = -120000 /* Displays "1" */
0e123 = 0e456 /* Displays "1" */
0e123 == 0e456 /* Displays "0" */上述の数値は、入力データについては常に有効です。 計算の結果は、NUMERIC DIGITS の設定値に応じて、従来の形式または指数形式
のいずれかで戻されます。 小数点以上の桁数が、DIGITS を超えているか、または小数点以下
の桁数が DIGITS の 2 倍を超えていると、その数は、指数形式が使用されます。 REXX が生成する指数形式では、常に E の後に符号が付けられて、
読みやすくなっています。
指数が 0 の場合は、指数部分は省略されます (つまり、
E+0 という指数部は生成されません)。
FORMAT 組み込み機能を使用して、数値を指数関数形式に明示的に変換したり、強制的に項目の多い形式で表示したりできます。(FORMAT を参照)。
0 は除く) が小数点の前にあり、10 の累乗が常に 3 の倍数として表されます。 したがって、整数の部分は 1 から 999 の範囲に
なります。
科学計算、技術計算表記のどちらを使用するかを、次の命令を用いて制御できます。
/* after the instruction */
Numeric form scientific
123.45 * 1e11 -> 1.2345E+13
/* after the instruction */
Numeric form engineering
123.45 * 1e11 -> 12.345E+12