メインコンテンツにスキップ
モジュール 2 · レッスン 1 / 2コース内の 3/10~12 min
モジュールのレッスン (1/2)

COBOL 算術演算

COBOL では、専用の動詞 (ADD、SUBTRACT、MULTIPLY、DIVIDE) を使用するか、汎用的で表現力豊かな COMPUTE ステートメントを使用して数学演算を実行できます。

形式動詞を使用した算術演算

COBOL は、基本的な算術演算ごとに特定のテキスト命令を提供します。

1. 追加 (ADD)

1 つ以上の値を変数に追加します。

COBOL
ADD WS-NUM-A TO WS-NUM-B.
* Equivalent to: WS-NUM-B = WS-NUM-B + WS-NUM-A

加数を変更せずに結果を 3 番目の変数に保存する場合は、GIVING 句を使用します。

COBOL
ADD WS-NUM-A TO WS-NUM-B GIVING WS-RESULT.

2. 減算 (SUBTRACT)

ある値を別の値から減算します。

COBOL
SUBTRACT 10 FROM WS-BALANCE.
SUBTRACT WS-TAX FROM WS-SUBTOTAL GIVING WS-TOTAL.

3. 乗算 (MULTIPLY) と除算 (DIVIDE)

同様の方法で値を乗算およ​​び除算します。

COBOL
MULTIPLY WS-QTY BY WS-PRICE GIVING WS-TOTAL.
DIVIDE WS-TOTAL BY WS-ITEMS GIVING WS-AVERAGE.

COMPUTE ステートメント

複雑な数式の場合、個々の算術動詞を使用すると長くなり、読みにくくなることがあります。 COMPUTE ステートメントを使用すると、現代言語と同様の標準数学演算子 (累乗の +、-、*、/、**) を使用できます。

COBOL
COMPUTE WS-TOTAL = (WS-PRICE * WS-QUANTITY) - WS-DISCOUNT.

自分で試してみてください

運動#cobol.m2.l1.e1
試行回数: 0読み込み中…

ADD 動詞を使用して PROCEDURE DIVISION 内にステートメントを記述し、WS-NUM-A から WS-NUM-B を合計し、結果を WS-RESULT に格納します。

エディターを読み込み中…
ヒントを表示

ADD WS-NUM-A TO WS-NUM-B GIVING WS-RESULT という構文を使用します。

3 回の試行後に解決策が利用可能になります

運動#cobol.m2.l1.e2
試行回数: 0読み込み中…

COMPUTE ステートメントを使用して、式 (WS-NUM-A の 2 倍から WS-NUM-B を引いたもの) を適用して WS-RESULT の値を計算します。

エディターを読み込み中…
ヒントを表示

* 演算子と - 演算子の前後にはスペースを使用します: COMPUTE WS-RESULT = (WS-NUM-A * 2) - WS-NUM-B。

3 回の試行後に解決策が利用可能になります