省略形:DEC
DECIMAL は、基数が 10 進数であることを示す算術データ型属性です。形式は次のとおりです。
DECIMAL[(p[,q])]
精度 p,q (qはオプションで小数部の桁数を表す) は、DECIMAL 属性か FIXED 属性または FLOAT 属性で指定できますが、2 回指定することはできません。精度 p およびスケール q (指定する場合) は、正の整数でなければなりません。精度またはスケールを指定しない場合はデフォルトが使用されます。デフォルトの精度の詳細については、『Open PL/I ユーザー ガイド』および「文」の章の「DEFAULT」のセクションを参照してください。
DECIMAL で FIXED または FLOAT を指定しない場合のデフォルトは FIXED です。FIXED または FLOAT で BINARY または DECIMAL を指定しない場合のデフォルトは DECIMAL です。
FIXED とともに使用した場合、DECIMAL は 10 進 p 桁以上の固定小数点算術値を示します。q が指定されている場合、整数部が p から q を引いた桁数になり、小数部が q 桁になります。q を省略した場合は、q = 0 と見なされます。したがって、最大 p 桁の 10 進数を含む整数となります。
declare fd fixed decimal (1,2) init (2) /* not supported. */
FLOAT とともに使用した場合、DECIMAL は仮数が 10 進 p 桁以上の浮動小数点算術値を示します。この場合、q を指定することはできません。