コボル掲示板をミル!20カキコ!COBOLとは、事務処理用のプログラミング言語である。アメリカ国防総省によって統一事務処理言語の開発が提案され、1959年にアメリカのデータシステムズ言語協議会(CODASYL)が開発された。世界最初に“バグ”を発見した、最初期のプログラマでもありコンピュータ開発者でもあった“アメイジング・グレース”こと、グレース・ホッパー女史が開発したコンパイラ言語である「FLOW-MATIC」がベース。このため、グレース・ホッパーは「COBOLの母」とも呼ばれている(ちなみに女性にして初の海軍将官(提督)でもある)。日本のごく一部のおっさんからは「COBOLのおばちゃま」とか呼ばれることもある。アメリカ政府が主導で開発を行ったこともあり、COBOL誕生以降、アメリカ政府の事務システムは全てCOBOLによって製作された。現在でも事務処理用ホストコンピュータではCOBOLプログラムが主流として活躍している。現在のCOBOLの仕様は2014。他のプログラミング言語と異なり、英語に近い構文になっているのが最大の特徴である。これは開発者であるグレース・ホッパーの理念によるもの、らしい。当時は機械語主体だったので、プログラミングする言語は標準化された英語をベースに作りやすい、可読性の高い(高水準)言語であるべきだという考えのもと作られている。その反面、プログラム言語としては冗長になり過ぎるきらいもあり、その点についての批判もある。DIVISION.」(手続き部)の4つのDIVISIONから成り立ち、これらを順番に記述しなければならない。DIVISION.プログラムの見出しとなる部。「PROGRAM-ID.」(プログラム番号)、「AUTHOR.」(プログラム作成者名)、「DATE-WRITTEN.」(作成日)などのプログラムの実行に関係しない文を記述する。更新履歴などを記述することもある。「AUTHOR.」「DATE-WRITTEN.」は廃要素のため、最新規格のCOBOLでは使わないようにしよう。DIVISION.プログラムの実行環境を記述する部。SECTION.」(I/O節)があり、環境節ではホストコンピューター名など、I/O節では入出力ファイルの情報を記述する。環境節の「SOURCE-COMPUTER.」「OBJECT-COMPUTER.」等の記載は、コンパイル時に影響を与えることは無く、実質覚書のようなものである。そのため、省略されることも多い。DIVISION.変数や定数を定義する部。SECTION.」(引数節)がある。変数、定数の宣言は、PICTURE(PIC)句によって行う。DIVISION.処理コードを記述する部。ここで定義された処理が実行される。書式COBOLでは、1行に80桁(カラム)まで記述できるが、実際にソースコードを記述できる領域が指定されている。一部例外もあるが、行の終端には必ずピリオド(.)を付けなければならない。英字は大文字・小文字のどちらで記述しても良い(区別されない)が、かつて小文字に対応していないパンチカードや文字コードが存在していた頃の名残もあってか、大文字で記述することが一般的になっている。1~6カラム一連番号領域。プログラムの行を識別するための領域。コンパイル時にこの領域は無視されるため、必ずしもコーディング上記述する必要はない。「*」を付けることで、その行をコメント行として認識される。8~11カラムA領域。DIVISIONやSECTION等の見出しや作業領域節の「01」などを記述する。12~72カラムB領域。命令文や各DIVISION、SECTIONを構成する文を記述する。ピリオドも含めて、全てこの領域に記述する必要がある。73~80カラムプログラム識別領域。コメントとして扱われる領域。コンパイル時にこの領域は無視されるため、必ずしもコーディング上記述する必要はない。青字は予約語、緑字はコメント行を表す。RUN」と記述しなければならない。RUN.COBOLの数字項目は定義された桁数よりも少ない桁数の値が格納された場合、ゼロパディングした状態で扱うため、このまま表示させると001、002、...、098と先頭に0が補われて表示されてしまう。以下の最大の整数を表す。いわゆる「小数点以下切り捨て」である。LOG10(I)):)」と記述することで、パディングされた0を除いた部分だけを表示させることが出来る。9(n)」で定義しているため、負の数の場合を考慮する必要は無い。S9(n)」で定義した場合は、負の数の場合も考慮する必要がある。全部TOP■ニコニコ動画モバイル運営元:ドワンゴ。