Saturday, November 5, 2011

contoh program cobol : membuat tabel

       IDENTIFICATION DIVISION.
       PROGRAM-ID. TABEL1.
       ENVIRONMENT DIVISION.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       77 U PIC 99.
       77 GARIS PIC X(65) VALUE ALL '-'.
       01 TABEL1.
          02 TGL OCCURS 10 TIMES PIC 99.
          02 NOKIA OCCURS 10 TIMES PIC 99.
          02 ERIC OCCURS 10 TIMES PIC 99.
          02 SAMSUNG OCCURS 10 TIMES PIC 99.
          02 NEXI OCCURS 10 TIMES PIC 99.
          02 TOTAL OCCURS 10 TIMES PIC 99.
       01 judul-1 PIC X(20) VALUE ' Tabel Penjualan'.
       01 judul-2.
          02 FILLER PIC X(2) VALUE '| '.
          02 FILL PIC X(7) VALUE 'TANGGAL'.
          02 FILL PIC X(2) VALUE '| '.
          02 FILL PIC X(7) VALUE ' NOKIA'.
          02 FILL PIC X(2) VALUE '|'.
          02 FILL PIC X(9) VALUE ' ERICSON'.
          02 FILL PIC X(2) VALUE '|'.
          02 FILL PIC X(9) VALUE ' SAMSUNG'.
          02 FILL PIC X(2) VALUE '|'.
          02 FILL PIC X(9) VALUE ' NEXIAN'.
          02 FILL PIC X(2) VALUE '|'.
          02 FILL PIC X(9) VALUE ' TOTAL'.
          02 FILL PIC X(1) VALUE '|'.
       01 isi-tabel.
          02 FILL PIC X(2) VALUE '| '.
          02 TANGGAL PIC X(7).
          02 FILL PIC X(2) VALUE '| '.
          02 NOK PIC X(7).
          02 FILL PIC X(2) VALUE '| '.
          02 ERI PIC X(9).
          02 FILL PIC X(2) VALUE '| '.
          02 SAM PIC X(9).
          02 FILL PIC X(2) VALUE '| '.
          02 NEX PIC X(9).
          02 FILL PIC X(2) VALUE '| '.
          02 TOT PIC Z(9).
          02 FILL PIC X(1) VALUE '|'.
       SCREEN SECTION.
       01 HAPUS.
          02 BLANK SCREEN.
       PROCEDURE DIVISION.
       PROGRAM-UTAMA.
           PERFORM MASUK VARYING U
           FROM 1 BY 1 UNTIL U > 10.
           PERFORM KPALA.
           PERFORM TAMPIL VARYING U
           FROM 1 BY 1 UNTIL U > 10.
           ACCEPT U.
           STOP RUN.
       MASUK.
           DISPLAY 'DATA KE-',U.
           DISPLAY ( , )' Masukkan tanggal : '.
           ACCEPT TGL(U).
           DISPLAY ( , )' Jumlah hp nokia : '.
           ACCEPT NOKIA(U).
           DISPLAY ( , )' Jumlah ericson :'.
           ACCEPT ERIC(U).
           DISPLAY ( , )' Jumlah hp samsung : '.
           ACCEPT SAMSUNG(U).
           DISPLAY ( , )' Jumlah hp nexian : '.
           ACCEPT NEXI(U).
           COMPUTE TOTAL(U)=NOKIA(U)+ERIC(U)+SAMSUNG(U)+NEXI(U).
           DISPLAY HAPUS.
       TAMPIL.
           MOVE TGL(U) TO TANGGAL.
           MOVE NOKIA(U) TO NOK.
           MOVE ERIC(U) TO ERI.
           MOVE SAMSUNG(U) TO SAM.
           MOVE NEXI(U) TO NEX.
           MOVE TOTAL(U) TO TOT.
           DISPLAY isi-tabel.
           DISPLAY GARIS.
       KPALA.
           DISPLAY judul-1.
           DISPLAY judul-2.
           DISPLAY GARIS.
Penjelasan :
  • IDENTIFICATION DIVISION : Di tulis mulai dari kolom ke 8, ditulis untuk(nama program, pembuat, dan tahun pembuatan) bersifat optional, wajib di tulis tapi boleh di kosongkan.
  • ENVIRONMENT DIVISION: Ditulis mulai dari kolom ke 8, untuk memberikan informasi peralatan yang digunakan dalam program, dibagi menjadi 2 section yaitu CONFIGURATION SECTION dan INPUT-OUTPUT SECTION.  bersifat optional (boleh di kosongkan).
  • DATA DIVISION : Di tulis mulai dari kolom ke 8, terdiri dari 5 section yaitu :
    FILE SECTION. WORKING-STORAGE SECTION.SCREEN SECTION.LINKAGE SECTION dan REPORT SECTION. Divisi ini berguna untuk mendeskripsikan variable-variabel dan jenis tipe data yang digunakan dalam program COBOL (Lebih tepatnya pada WORKING-STORAGE SECTION). 
  • Penomeran Pada working storage section : data item individu ditulis dengan level number 77 sedangkan group data item dinyatakan dengan level number 01 untuk nama record dan 02 sampai 49 untuk deskripsi record kemudian 88 untuk operasi logika.
  • FILL dan FILLER digunakan untuk memberikan ruang sebanyak karakter yang di tentukan contoh :  02 FILL PIC X(9) VALUE ' SAMSUNG' artinya memberikan ruang sebanyak 9 karakter untuk kata SAMSUNG.
  • TGL OCCURS 10 TIMES PIC 99 artinya : memberikan array pada variable TGL sebanyak 10 kali dengan tipe data numerik dua karakter.
  • PERFORM KPALA artinya : menjalankan pragraph dengan nama kpala. di tulis di kolom 12
  • PERFORM MASUK VARYING U FROM 1 BY 1 UNTIL U > 10 artinya menjalankan paragraph MASUK sampai 10 kali dengan U sebagai variable Counternya. di tulis di kolom 12.
  • Judul paragraf di tulis di kolom ke 8.
Untuk penjelasan selanjutnya dapat di pelajari dengan cara me running program di atas. Dan untuk di ingat agar selalu memperhatikan posisi penulisan karena jika posisi kolomnya salah meka program akan error.

No comments:

Post a Comment