COBOL言語の関数「SQRT」について理解しよう!|用語辞典

COBOL(コボル)言語の予約語SQRTを使ったルート(平方根)の算出とは

辞典・辞書-sqrt-イメージ

COBOL(コボル)言語のSQRT関数とは?

COBOL(コボル)の組込み関数であるSQRT関数は、ある数値のルート(平方根)を求める場合に使用します。ルート(平方根)は中学の数学などでも習う為、ご存知の方も多いかと思います。ルート(平方根)をわかりやすく考えるときに正方形を用いる事があります。4辺の長さが同じである正方形の面積=1辺の長さ×1辺の長さで求められます。つまりルート(平方根)は正方形の1辺の長さを求める事というふうに考える事ができます。では早速COBOL言語での使い方について見ていきましょう。

書き方(SQRT関数):

FUNCTION SQRT(引数1)

・関数の型:数字型

・引数1:ルート(平方根)を求める数値を指定します。

・戻り値:引数1のルート(平方根(近似値の絶対値))です。

使用例:

辞典・辞書-sqrt-使用例

実行結果:

辞典・辞書-sqrt-実行結果

SQRT関数のCOBOL(コボル)言語における基本事項やルールについて

1.「SQRT」の間の空白や改行は、自由に設定できます。

2.組込み関数の前には予約語「FUNCTION」を指定する必要があります。

3.引数1は0または正の整数とする必要があります。

COBOL(コボル)言語のSQRT関数を扱う上での注意点

SQRT関数の引数は0または正の整数とする必要があり、負の値の場合には実行時にエラーとなってしまいます。ですので、実際にプログラミングを記述する際は事前に引数の値が0または正の整数であることを確認するチェック処理を行うようにしましょう。また、0のルート(平方根)の値は0、0以外では2乗することで負数となる数字は存在しませんので、その事も基本として理解しておきましょう。

SQRT関数を使ったCOBOL(コボル)プログラムの活用法

SQRT関数は、先ほどご紹介した通りある数値のルート(平方根)を求める場合に使用する関数でした。ここでは活用法として、値の加算結果を引数として利用したり、結果値を以降の処理で活用するために少数第2までとする処理の動きについて理解を深めてみましょう。ここでは「ひとよひとよにひとみごろ」の√2や、「ふじさんろくおうむなく」の√5など馴染みのある値で確認してみましょう。

サンプルプログラム(SQRT2):

  1. DENTIFICATION DIVISION.
  2. PROGRAM-ID. SQRT_SAMPLE2.
  3. ENVIRONMENT DIVISION.
  4. INPUT-OUTPUT SECTION.
  5. DATA DIVISION.
  6. WORKING-STORAGE SECTION.
  7. 01 WK-SUJI.
  8. 03 WK-SUJI-0 PIC 9 VALUE ZERO.
  9. 03 WK-SUJI-2 PIC 9 VALUE 2.
  10. 03 WK-SUJI-3 PIC 9 VALUE 3.
  11. 01 WK-RESULT.
  12. 03 WK-R1 PIC 9V99.
  13. 03 WK-R2 PIC 9V99.
  14. 03 WK-R3 PIC 9V99.
  15. PROCEDURE DIVISION.
  16. COMPUTE WK-R1 = FUNCTION SQRT(WK-SUJI-0).
  17. DISPLAY WK-R1.
  18. COMPUTE WK-R2 = FUNCTION SQRT(WK-SUJI-2).
  19. DISPLAY WK-R2.
  20. COMPUTE WK-R3 = FUNCTION SQRT(WK-SUJI-2 + WK-SUJI-3).
  21. DISPLAY WK-R3.
  22. STOP RUN.

実行結果(SQRT2):

辞典・辞書-sqrt-実行結果

今回ご紹介したSQRT2のサンプルプログラムは、ある数値のルート(平方根)を求める場合に使用する関数でした。ルート(平方根)は、中学の数学でも習っている事からも内容については比較的わかりやすいものであったと思います。実際のプログラミングを行う事でより理解と活用をしていただければと思います。

この記事を読んだ人は、こちらの記事も読んでいます

【未経験者歓迎】COBOLプログラマー・システムエンジニアの募集

株式会社COBOLの求人・転職・募集情報を見る

COBOL入門のカテゴリー

取引企業様 募集中
COBOL技術者 募集
COBOL魂
読者採用
COBOL入門