Index
DIVIDE

【用途】
割り算。掛け算(MULTIPLY)と同様にCOMPUTE文の登場で使用頻度は激減。
ただ余りを求める計算には、現在もDIVIDEを利用してます。

【使用例】
・C=A/B 余りをDへ  DIVIDE  A  BY  B  GIVING  C  REMAINDER  D.

DIVIDE文


機能

DIVIDE(除算)文は,一つの数字作用対象をほかの数字作用対象で割り,その商と剰余を一つ以上のデー夕項目に収める.


一般形式

【書き方1】
Image

【書き方2】
Image

【書き方3】
Image

【書き方4】
Image

【書き方5】
Image


構文規則

(1)

一意名は,数字項目でなければならない.ただし,GIVING(商)又はREMAINDER(剰余)の右にだけ出てくる一意名は,数字編集項目であってもよい.

(2)

定数は,数字定数でなければならない.

(3)

作用対象の合成は,REMAINDERの右にだけ出てくるデータ項目を除く,すべての受取り側データ項目を小数点で位置合せし,重ね合わせてできる仮想のデータ項目とし,そのけた数は,18けたを超えてはならない.
ただし,このコンパイラでは,作用対象の合成のけた数は18けたを超えてもよい.


一般規則

(1)

書き方1では,定数-1又は一意名-1のデータ項目の値を一時的なデータ項目に入れる.この一時的なデータ項目の値で,一意名-2のデータ項目の値を割る.その被除数の値(一意名-2のデータ項目の値)をこの商で置き換える.更にその一時的なデータ項目で,指定した順に左から右へ一意名-2の各繰り返しを割る.

(2)

書き方2では,定数-1又は一意名-1のデータ項目の値で,定数-2又は一意名-2のデータ項目の値を割り,その商を一意名-3の各データ項目に入れる.

(3)

書き方3では,定数-2又は一意名-2のデータ項目の値で,定数-1又は一意名-1のデータ項目の値を割り,その商を一意名-3の各データ項目に入れる.

(4)

書き方4では,定数-1又は一意名-1のデータ項目の値で,定数-2又は一意名-2のデータ項目の値を割り,その商を一意名-3のデータ項目に入れる.剰余をそのとき計算し,その結果を一意名-4のデータ項目に入れる.一意名-4が添字付けされていると,その添字は,剰余を一意名-4のデータ項目に入れる直前に評価される.

(5)

書き方5では,定数-2又は一意名-2のデータ項目の値で,定数-1又は一意名-1のデータ項目を割り,あとは一般規則(4)の書き方4で説明した除算処理と同様とする.

(6)

書き方4と書き方5は,除算の剰余(一意名-4)を求めるときに使う.剰余(remainder)とは,商(一意名-3)と除数との積をその被除数から減じたものとする.一意名-3が数字編集項目であるとき,剰余を計算するのに使う商は,編集する前の商とする.ROUNDEDを書くと,剰余を計算するのに使う商は,四捨五入する前の切り捨てられた値とする.この剰余を計算するのに使う商は,数字として定義され,商(一意名-3)と同じけた数,同じ小数点位置,同じ符号の有無をもつ.

(7)

書き方4と書き方5では,一意名-4の精度は上記の計算によって決まる.一意名-4の内容は,必要に応じて小数点の位置合せと切捨てが行われる.

(8)

書き方4と書き方5で,SIZE ERROR指定を指定するときは,次による.
(a)

商にけたあふれが起こると,剰余の計算は無意味である.このとき,一意名-3及び一意名-4の内容は変更されない.

(b)

剰余にけたあふれが起こると,一意名-4の内容は変更されない.複数個の答の一意名をもつ一般の算術文の場合と同様に,商と剰余のどちらでけたあふれになったかは,利用者が調べなければならない.


Index