本文へスキップ
BecomeCoder

COBOLコース · 第3章 データを表す ― PICTURE句とレベル番号 · レッスン12

PICTURE句とは ― データの「姿」を宣言する

ローカル実施

導入

レッスン9で PIC X(20) という記述をさらっと使いました。この PICPICTURE句)こそ、COBOLでデータを宣言するときの中心的な仕組みです。名前のとおり、データの「絵姿(picture)」——見た目や形を宣言します。

説明

PICTURE句は、変数がどんな種類のデータを、何桁分持つかを記号で表します。

       01  WS-NAME             PIC X(10).
       01  WS-AGE               PIC 9(3).
  • PIC X(10)X は英数字(何の文字でもよい)を表す記号。(10) は「10文字分」という意味。つまり「10文字までの英数字」というデータの姿。
  • PIC 9(3)9 は数字1桁を表す記号。(3) は「3個」という意味。つまり「3桁の数値」というデータの姿。

X9 の1文字1文字が「その位置に何が入るか」を表す絵文字のような記号になっているのがPICTURE句の考え方です。(10) のようにカッコで繰り返し回数を書けますが、XXXXXXXXXX と10個ならべて書いても同じ意味になります(実務では (10) の書き方がほとんどです)。

多くの言語の「型」は intstring のように種類だけを表しますが、COBOLのPICTURE句は種類+桁数までを1つの記号列で表す点が大きな違いです。この「桁数まで型に含める」設計は、次のレッスンで見る「数値の正確な扱い」に直結しています。

試すには

PIC X(5) の変数に6文字の文字列を入れようとするとどうなるでしょうか。答えはレッスン19(MOVE文)で詳しく扱いますが、「桁数がデータの一部である」という感覚を、まずはここで持っておいてください。