今回は加算(足し算)について解説します。
足し算についてはこちら、引き算についてはこちら、割り算についてはこちらで解説します。
演算子を使用することができるCOMPUTEについてはこちらで解説しています。
乗算(掛け算)
乗算
乗算は「MULTIPLY」を使用して行う。
まずは簡単な例を
MULTIPLY A BY B.
これは、「A × B」を計算して、計算結果を変数Bに代入するという意味。
数値を用いてやるとこんな感じ。
MULTIPLY 5 BY B.
これは、「5 × B」を計算して、計算結果を変数Bに代入するという意味になる。
「MULTIPLY」を使用した乗算では、変数Bの値は計算結果で上書きされてしまうので注意が必要。
注意点
MULTIPLY A B BY C.
上記のように、3つ以上の項目を掛け合わせることはできないため注意。
計算結果を異なる変数に代入
計算結果を異なる変数に代入したいときには、「GIVING」を指定する。
MULTIPLY A BY B GIVING C.
こうすることで、「A × B」の計算結果を変数Cに代入することができる。
計算結果を四捨五入する
計算結果を四捨五入したい場合には、「ROUNDED」を指定する。
MULTIPLY A BY B ROUNDED.
こんな感じ、
この時、変数Bが整数なのか、少数第何位まであるのかによって、どの位で四捨五入するかが決定する。
変数Bが少数第一位まであった場合
01 B PIC 99V9.
少数第二位を四捨五入し、結果は少数第一位までの数になる。
変数Bが整数であった場合
01 B PIC 99.
少数第一位で四捨五入し、結果は整数になる。
四捨五入について詳しくはこちら。
計算結果を切り捨てする
計算結果を切り捨てする場合には、「ROUNDED」指定などせずとも、変数に合わせて自動的に切り捨てをしてくれる。
例えば以下のような変数であった場合
01 A PIC 99 VALUES 10.
この場合では、小数点以下の数は切り捨てし、自動的に整数にしてくれる。
では実際に計算をすると、
MULTIPLY 0.555 BY A.
「0.555 × 10」の計算結果は「5.55」であるが、今回は少数点以下を切り捨ててくれるので、計算結果は「5」となる。