カテゴリ: COBOL 更新日: 2026/02/11

COBOLのデータ定義をきれいに整えるルールとは?ピクチャ句整列の基本を初心者向けに解説

データ定義の整形ルール(ピクチャ句整列など)
データ定義の整形ルール(ピクチャ句整列など)

先生と生徒の会話形式で理解しよう

生徒

「COBOLのプログラムって、なんだかカタチがそろってるように見えるんですが、あれはどうしてなんですか?」

先生

「いいところに気がつきましたね。COBOLでは、データの定義を見やすく、そして読みやすくするために、整形ルールというものがあるんです。」

生徒

「整形ルールって何ですか?どんなふうに書けばいいんでしょうか?」

先生

「それでは、COBOLのピクチャ句整列の基本について、一緒に見ていきましょう!」

1. COBOLのデータ定義とは?

1. COBOLのデータ定義とは?
1. COBOLのデータ定義とは?

COBOL(コボル)というプログラミング言語では、データ定義と呼ばれる「使うデータを最初に説明する作業」がとても大切です。たとえば、名前や年齢、金額などをプログラムで扱うとき、その情報がどういう種類のデータなのか、どれくらいの長さなのかを最初に決めておきます。

これをDATA DIVISION(データ・ディビジョン)で記述し、その中でも特に重要なのがピクチャ句(PICTURE句)です。

2. ピクチャ句(PICTURE句)って何?

2. ピクチャ句(PICTURE句)って何?
2. ピクチャ句(PICTURE句)って何?

ピクチャ句は、データの「見た目の形」を定義する記述です。英語で言うと「PICTURE(ピクチャー)」、つまり「図」や「形」という意味ですね。

たとえば「9999」なら「4桁の数字」、「X(10)」なら「10文字の文字列」を意味します。

例を見てみましょう。


01  USER-NAME        PIC X(20).
01  USER-AGE         PIC 99.
01  ACCOUNT-BALANCE  PIC 9(6)V99.

このように、各データに「名前」「ピクチャ句」がついています。これがデータ定義の基本形です。

3. ピクチャ句の整列ってなに?

3. ピクチャ句の整列ってなに?
3. ピクチャ句の整列ってなに?

COBOLでは、見やすさや読みやすさをとても大切にします。そこで、データ定義を書くときは「そろえて書く」ルールがあるんです。これをピクチャ句整列(ピクチャくせいれつ)といいます。

簡単にいうと、「列をきれいにそろえること」です。具体的には、以下のようなポイントを意識します。

  • 項目名(変数名)は同じ位置でそろえる
  • PIC(ピクチャ句)も同じ位置でそろえる
  • ピリオド(.)の位置もそろえる

整列していない例と、整列している例を比べてみましょう。

4. 整列されていない例と整列された例

4. 整列されていない例と整列された例
4. 整列されていない例と整列された例

まずは整列されていない例から。


01 NAME PIC X(10).
01  AGE     PIC 99.
01   BALANCE   PIC 9(5)V99.

次に、整列された美しい書き方です。


01  NAME           PIC X(10).
01  AGE            PIC 99.
01  BALANCE        PIC 9(5)V99.

どうでしょうか?整列された方が、ずっと見やすいですよね。COBOLでは、このような整形スタイルを守ることで、誰が見てもすぐに理解できるコードになるんです。

5. スペースの数にルールはある?

5. スペースの数にルールはある?
5. スペースの数にルールはある?

COBOLは昔のメインフレームで動いていたため、カラム位置に敏感です。現在では自由度は上がりましたが、可読性のためにスペースの数をそろえる習慣は今も残っています。

たとえば、以下のような間隔で書くのが一般的です(目安です)。

  • レベル番号(01、05など):左端(カラム8から)
  • 変数名(項目名):レベル番号の後に1〜2スペースあける
  • PIC:変数名の後に2スペース以上あける
  • ピクチャ内容の後にピリオド(.)

6. 実行結果に影響はある?

6. 実行結果に影響はある?
6. 実行結果に影響はある?

整形ルールは、プログラムの動作には関係しません。見た目がそろっていなくても、コンパイルして実行することはできます。

でも、整っていないと他の人が読んだときに意味がわかりにくくなります。会社やチームの中では、「整形ルールを守ること」がマナーとして求められます。

7. 覚えておきたい整形のコツ

7. 覚えておきたい整形のコツ
7. 覚えておきたい整形のコツ
  • タブは使わず、スペースでそろえる
  • ピクチャ句の種類で長さを調整(たとえば9(5)V99ならスペース多めに)
  • 似たデータはまとめて定義すると整列しやすい

初心者のうちはスペースをそろえるのが難しいかもしれませんが、エディターの「インデント機能」や「整形機能」を活用すると、きれいにそろえることができます。

8. サンプルプログラムで確認してみよう

8. サンプルプログラムで確認してみよう
8. サンプルプログラムで確認してみよう

次のプログラムは、きれいに整形されたデータ定義と、表示文を使った例です。


IDENTIFICATION DIVISION.
PROGRAM-ID. FORMAT-EXAMPLE.

DATA DIVISION.
WORKING-STORAGE SECTION.
01  USER-NAME        PIC X(20).
01  USER-AGE         PIC 99.
01  USER-SALARY      PIC 9(5)V99.

PROCEDURE DIVISION.
    DISPLAY "名前: " USER-NAME.
    DISPLAY "年齢: " USER-AGE.
    DISPLAY "給与: " USER-SALARY.
    STOP RUN.

このように、各データ項目をきちんとそろえて書くことで、誰が見ても「すっきり」「理解しやすい」プログラムになります。

まとめ

まとめ
まとめ

COBOLのデータ定義やピクチャ句の整列について学んできた内容を振り返ると、やはり読みやすさ分かりやすさを重視する書き方がとても重要だということがよく分かります。COBOLのデータ定義では、レベル番号、項目名、PIC句、ピリオドの位置をそろえることで、プログラム全体が整い、後から読む人にも優しい構造になります。特に、業務で使われることが多いCOBOLでは、担当者が変わってもスムーズに理解できるように、整列ルールが暗黙の標準として受け継がれてきました。 また、ピクチャ句の種類によってスペースの数を微調整したり、関連する変数をまとめて定義したりすることで、さらに見やすいコードになります。これは単なる見た目の問題ではなく、長期的に保守性を高める非常に大切な工夫です。とくにX(20)や9(5)V99のように桁数の多いピクチャ句を含む場合、項目名の位置がずれるとすぐに読みにくくなるため、細やかな整形が求められます。 さらに、タブではなくスペースを使うこと、現代的なエディタの整列機能を活用することなど、初心者にも実践しやすいポイントが多く存在します。プログラムの実行には影響しない整形ですが、実務では整形こそが品質の一部といえるほど重要視されています。可読性の高いコードは、エラーの発見にも役立ち、開発効率を大きく向上させます。 最後に、整理されたサンプルプログラムをもう一度確認しておきましょう。このサンプルはCOBOLの基本的な整形ルールがしっかり反映された書き方になっており、初心者にとって非常に参考になります。


DATA DIVISION.
WORKING-STORAGE SECTION.
01  PRODUCT-NAME     PIC X(30).
01  PRODUCT-PRICE    PIC 9(5)V99.
01  PRODUCT-STOCK    PIC 9(4).

PROCEDURE DIVISION.
    DISPLAY "商品名:" PRODUCT-NAME.
    DISPLAY "価格:"   PRODUCT-PRICE.
    DISPLAY "在庫数:" PRODUCT-STOCK.
    STOP RUN.

このように、COBOLのデータ定義を丁寧にそろえて書くことは、基礎的でありながらとても大切なスキルです。業務での利用が多い言語だからこそ、基本的な整形ルールを身につけておけば、どの現場でも読みやすく信頼されるコードを書くことができます。プログラムを書く際には、単に動かすだけではなく、読み手への配慮を忘れないことが大切です。整列されたコードは、長く使われるCOBOLプログラムにおいて、強い味方になります。

先生と生徒の振り返り会話

生徒

「今日学んだピクチャ句整列って、思っていたよりも重要なんですね。見た目が整っているだけで、理解がすごく楽になると感じました。」

先生

「そうなんですよ。COBOLは業務系で長年使われてきた言語なので、読みやすく整えた書き方が大切にされてきました。整ったコードは誤解を生みにくく、チームで仕事をするときにも役立ちます。」

生徒

「確かに、スペースの数やピリオドの位置まで統一されていると、すごくきれいに見えます。プロが書くコードって感じです。」

先生

「その感覚はとても大切です。細かい整形に気をつけられる人は、どんな言語でもきれいで読みやすいコードが書けるようになりますよ。」

生徒

「では、次からはコードを書くときにスペースの位置も意識してみます!」

この記事を読んだ人からの質問

この記事を読んだ人からの質問
この記事を読んだ人からの質問

プログラミング初心者からのよくある疑問/質問を解決します

COBOLのデータ定義とは何ですか?なぜ重要なのですか?

COBOLのデータ定義とは、プログラムで使用するデータの種類や長さ、構造などを事前に決めて記述することです。これは「DATA DIVISION」に書き、特に業務システムでは重要視されています。データの扱いを明確にすることで、ミスの少ない安定したプログラム作成が可能になります。
カテゴリの一覧へ
新着記事
New1
C#
C#で条件分岐をネストする方法!入れ子構造の書き方を基礎から学ぼう
New2
COBOL
COBOLの文字列検索を完全ガイド!初心者でもわかるINSPECTとUNSTRINGの使い方
New3
C#
C#でXMLバリデーションを完全マスター!XSDスキーマを使ったチェック方法を初心者向けに解説
New4
COBOL
COBOLのEDITING記述子を完全解説!初心者でもわかるPIC Z・\*・\$による整形出力
人気記事
No.1
Java&Spring記事人気No1
C#
C#のpartialクラスとは?初心者でも理解できるクラス分割の基本
No.2
Java&Spring記事人気No2
C#
C#の引数と戻り値の基本!値を受け渡し・返す仕組みを理解しよう
No.3
Java&Spring記事人気No3
C#
C#のstaticクラスとstaticメソッドの基本と使い方をやさしく解説!
No.4
Java&Spring記事人気No4
C#
C#のラムダ式の書き方と構文を初心者向けに完全解説
No.5
Java&Spring記事人気No5
C#
C#のLINQでFirstとFirstOrDefaultの違いと使い方を完全解説!初心者向けガイド
No.6
Java&Spring記事人気No6
COBOL
COBOLの数値データ型「PIC 9」の使い方と注意点をやさしく解説!
No.7
Java&Spring記事人気No7
C#
C#のLINQでOrderByを使った並び替えを完全ガイド!初心者でもわかるソート方法
No.8
Java&Spring記事人気No8
C#
C#で型を調べる方法!GetType()・typeof演算子の違いと使い方