Kurz: COBOL (Common Business-Oriented Language) wurde 1959 für Wirtschaft und Verwaltung entworfen, mit großem Einfluss von Grace Hopper.
Teil des Kurses COBOL
Was ist COBOL?
COBOL (Common Business-Oriented Language) wurde 1959 für Wirtschaft und Verwaltung entworfen, mit großem Einfluss von Grace Hopper. Die Sprache liest sich wie englische Sätze (ADD 1 TO ZAEHLER, IF BETRAG > 100) und rechnet präzise mit Dezimalzahlen (wichtig bei Geld). Heute laufen laut Schätzungen mehrere hundert Milliarden Zeilen COBOL in Banken, Versicherungen, Behörden und Fluglinien, oft auf Großrechnern (Mainframes). Wer COBOL beherrscht, wird dort dringend gesucht.
COBOL-Programme sind in Divisions gegliedert:
| Division | Inhalt |
|---|---|
IDENTIFICATION DIVISION | Programmname, Autor |
ENVIRONMENT DIVISION | Dateien, Umgebung |
DATA DIVISION | alle Variablen und Dateisätze |
PROCEDURE DIVISION | die Programmlogik |
Compiler und Ausführen
Wir nutzen GnuCOBOL (kostenlos):
cobc -x -free hallo.cob -o hallo # -x: ausführbares Programm, -free: freies Format
./halloKlassischer COBOL-Code hat ein festes Spaltenformat (Code in Spalten 8 bis 72). Mit -free darfst du frei einrücken; alle Beispiele hier nutzen das freie Format.
Das erste Programm
hallo.cob
IDENTIFICATION DIVISION.
PROGRAM-ID. HALLO.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 NAME PIC X(20) VALUE "Mia".
01 ALTERSJAHRE PIC 99 VALUE 17.
PROCEDURE DIVISION.
DISPLAY "Hallo COBOL!".
DISPLAY "Name: " NAME.
DISPLAY "Alter: " ALTERSJAHRE.
STOP RUN.Ausgabe:
Hallo COBOL!
Name: Mia
Alter: 17- Jede Anweisung endet mit einem Punkt (oder wird durch ein
END-...abgeschlossen) DISPLAYgibt Text aus,STOP RUNbeendet das ProgrammWORKING-STORAGE SECTIONenthält die Variablen01ist die Stufennummer;PIC X(20)beschreibt das Format (siehe nächstes Kapitel)- Kommentare: eine Zeile mit
*>(freies Format)
Rechnen auf COBOL-Art
IDENTIFICATION DIVISION.
PROGRAM-ID. RECHNEN.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 A PIC 9(3) VALUE 17.
01 B PIC 9(3) VALUE 5.
01 SUMME PIC 9(4).
01 REST PIC 9(3).
01 QUOT PIC 9(3)V99.
PROCEDURE DIVISION.
ADD A TO B GIVING SUMME.
DISPLAY "Summe: " SUMME.
SUBTRACT B FROM A GIVING SUMME.
DISPLAY "Differenz: " SUMME.
MULTIPLY A BY B GIVING SUMME.
DISPLAY "Produkt: " SUMME.
DIVIDE A BY B GIVING QUOT REMAINDER REST.
DISPLAY "Quotient: " QUOT " Rest: " REST.
COMPUTE SUMME = (A + B) * 2 - 1.
DISPLAY "COMPUTE: " SUMME.
STOP RUN.Ausgabe:
Summe: 0022
Differenz: 0012
Produkt: 0085
Quotient: 003.40 Rest: 000
COMPUTE: 0043Merke
- COBOL ist für Verwaltung und Finanzen gemacht und hat exakte Dezimalarithmetik
- Programm = vier Divisions; Anweisungen enden mit Punkt
DISPLAYzur Ausgabe,STOP RUNzum Beenden- GnuCOBOL:
cobc -x -free datei.cob - Rechnen mit
ADD,SUBTRACT,MULTIPLY,DIVIDE,COMPUTE
Übungsaufgabe
Schreibe ein Programm, das zwei Zahlen addiert und das Ergebnis ausgibt.
Quiz zur Selbstkontrolle
Wofür wurde COBOL entwickelt?
- Für Wirtschaft, Verwaltung und Finanzen (richtig)
- Für Computerspiele
- Für Webdesign
- Für künstliche Intelligenz
Welche Division enthält die Programmlogik?
- PROCEDURE DIVISION (richtig)
- DATA DIVISION
- ENVIRONMENT DIVISION
- IDENTIFICATION DIVISION
Womit endet eine Anweisung klassisch?
- Mit einem Punkt (richtig)
- Mit einem Semikolon
- Mit einem Doppelpunkt
- Mit nichts
Weiter im Kurs
Weiter: Daten und die PICTURE-Klausel
Alle Kapitel: COBOL im Überblick