TPT - Pert4. Procedure Division.

advertisement
Teknik Pemrograman Terstruktur 1 ( COBOL )
Merupakan divisi ke 4 dan yang terakhir dari program COBOL. Semua instruksi-instruksi
ditulis pada PROCEDURE DIVISION, sehingga divisi ini merupakan inti dari program
COBOL.Statement yang ada di PROCEDURE DIVISION dibentuk dari verb (Kata kerja).
 MOVE verb
Adalah perintah yang penting didalam program COBOL. Verb ini berguna untuk
memindahkan data dari satu field ke lokasi field yang lain, sehingga input data dapat
dimanipulasi untuk menghasilkan output.
Bentuk dari statement MOVE :
Nama-data-1
To nama-data-2 [, nama-data-3 ] …..
MOVE
Literal
Contoh :
01
KIRIM.
02
UNIT
PIC 9(3).
02
HARGA
PIC 9(5).
01
TERIMA.
02
UNIT-OUT
PIC 9(3).
02
HARGA-OUT
PIC 9(7).
Statement dalam PROCEDURE DIVISION sebagai berikut :
 MOVE UNIT TO UNIT-OUT.
 Akan memindahkan nilai data dari field UNIT ke field UNIT-OUT
 MOVE KIRIM TO TERIMA.
 Akan memindahkan 8 karakter dari field group item KIRIM ke 10 karakter secara
bersamaan ke field group item TERIMA.Group item yang dipindahkan akan
diperlakukan sebagai nilai alphanumerik,tidak memandang bentuk dari PICTURE
masing-masing elemen data item.Sehingga bersifat Left-justified.
Bentuk yang khusus dari MOVE verb adalah MOVE CORRSPONDING, dengan bentuk:
MOVE CORRESPONDING nama-data-1 TO nama-data-2.
MOVE CORRESPONDING digunakan untuk memindahkan data dari group data item ke
group data item yang lain yang bernama sama.
1
Teknik Pemrograman Terstruktur 1 ( COBOL )
Contoh:
Pada DATA DIVISION :
01
RECORD-A.
02
A
PIC 9(3).
02
B
PIC X(5).
02
C
PIC A(9).
02
D
PIC 9(4).
01
RECORD-B.
02
A
PIC 9(3).
02
FILLER
PIC X(5).
02
B
PIC X(6).
02
D
PIC 9(4).
02
E
PIC $$$.99.
02
FILLER
PIC X(5).
Statement :
MOVE CORRESPONDING RECORD-A TO RECORD-B.
Artinya :
Akan memindahkan group item RECORD-A ke group data item RECORD-B yang
mempunyai nama data yang sama.
Bentuk data yang dapat dipindahkan :
Bentuk data penerima
Numerik integer
Bentuk data pengirim
Alphabetik Alphanumerik Numerik non integer
Numerik yang di-edit
Alphabetik
Bisa
Bisa
Tidak
Alphanumerik
Bisa
Bisa
Bisa
Numerik integer
Tidak
Bisa
Bisa
Numerik non integer
Tidak
Tidak
Bisa
Numerik yang di-edit Tidak
Bisa
Tidak
Keterangan :
 Bila data mengandung tanda + atau - , maka tanda tersebut akan diabaikan.
 DISPLAY verb
Dipergunakan untuk menampilkan hasil di layar ataupun di printer.
Ada 3 bentuk statement DISPLAY :
Bentuk Statement DISPLAY ke-1 :
DISPLAY nama-layar
Bentuk Statement DISPLAY ke-2 :
Nama data
,nama-data
…[UPON nama-mnemonik]
DISPLAY
Literal
,literal
2
Teknik Pemrograman Terstruktur 1 ( COBOL )
 Nama data adalah nama dari data item yang telah disebutkan pada DATA
DIVISION, yang panjang nilai datanya tidak boleh lebih dari 1920 karakter.
 Literal adalah bentuk yang akan ditampilkan, berupa bentuk yang sudah tetap,
terletak diantara tanda petik dua (“ “) atau terletak di antara tanda petik tunggal(‘‘).
 UPON Clause dipergunakan bilamana hasil tidak ingin ditampilkan di layar, tetapi
akan dicetak di printer.
 Nama-mnemonik adalah nama yang dibentuk oleh programmer sebagai penunjuk
alat cetakan, yaitu printer.Nama-mnemonik ini harus sudah disebutkan pada
CONFIGURATION SECTION dalam SPECIAL NAMES, PRINTER IS namamnemonik.
Bentuk Statement DISPLAY ke-3 :
DISPLAY
-
Nama-data
[posisi-tampilan] Literal
ERASE
…[UPON nama-mnemonik]
Posisi-tampilan merupakan posisi baris dan kolom tertentu dari hasil yang akan
ditampilkan di layar di printer.
Posisi tampilan ini mempunyai bentuk :
Lin [{ + }] integer-1
Integer-2
,
COL [{+}] integer-3
integer-4
 LIN and COL adalah register khusus MS-COBOL, yang merupakan COBOL
reserved words, jadi tidak disebutkan pada DATA DIVISION.
 Setelah koma “,” harus diikuti oleh 1 blank untuk memisahkan letak posisi baris dan
posisi kolomnya.
 Contoh :
DISPLAY (15, 5) “HALLO SAYA KOMPUTER”.
ERASE adalah COBOL reserved word, yang kalau dipergunakan dalam DISPLAY
dan posisi- tampilan ditentukan,maka mulai dari posisi tampilan tersebut untuk 1
baris akan dihapus dari tampilan sebelumnya.
Contoh :
DISPLAY (3, 10) ERASE.
3
Teknik Pemrograman Terstruktur 1 ( COBOL )
 ACCEPT verb
Digunakan untuk memasukkan data lewat layar sewaktu program tersebut
dijalankan(pada waktu runtime).
Ada 4 bentuk statement ACCEPT :
Bentuk statement ACCEPT ke-1 :
ACCEPT nama-data
Data yang dimasukkan, akan ditempatkan pada nama-data setelah ACCEPT, yang
bentuk, jenis dan panjangnya sudah ditentukan dalam DATA DIVISION.
Bentuk Statement ACCEPT ke-2 :
ACCEPT nama-layar [ON ESCAPE statement-imperative ]
Apabila ON ESCAPE diikutsertakan, maka statement-imperative yang mengikutinya
akan dikerjakan.
Bentuk Statement ACCEPT yang ke-3 :
ACCEPT [posisi-layar] nama-data WITH
ZERO – FILL
SPACE – FILL
LEFT – JUSTIFY
RIGHT – JUSTIFY
TRAILING – SIGN
PROMPT
UPDATE
LENGTH – CHECK
EMPTY – CHECK
AUTO – SKIP
NO – ECHO
BEEP
 Posisi-layar menunjukkan letak dari posisi data yang akan dimasukkan pada layar.
Posisi-layar ini mempunyai bentuk :
Lin [{ + }] integer-1
Integer-2
,
COL [{+}] integer-3
integer-4
 ZERO-FILL phrase
Bila posisi-posisi field data-item penerima data tidak diisi dengan data (langsung di
tekan tombol RETURN), maka akan terisi dengan nilai nol.
4
Teknik Pemrograman Terstruktur 1 ( COBOL )
 SPACE FILL phrase
Bila posisi-posisi field data-item di layar tidak diisi dengan data (langsung ditekan
tombol RETURN), maka akan terisi dengan nilai nol.
 LEFT-JUSTIFY phrase
Tidak berfungsi dalam MS-COBOL.
 RIGHT-JUSTIFY phrase
Menyebabkan setelah data dimasukkan, hasil akhir yang tampak dilayar akan rata di
sebelah kanan.
 TRAILING – SIGN phrase
Menyebabkan tanda operasi + atau – tampak diposisi paling kanan dari field data input.
Biasanya tanda tersebut akan menempati posisi paling kiri.
 PROMPT phrase
Menyebabkan tampilan untuk field data-item penerima berbentuk nol untuk posisi
digit,titik untuk decimal point dan spasi untuk tanda operasi + atau -.
 UPDATE phrase
Menyebabkan tampilan untuk field data-item penerima berbentuk nilai awal dari field
penerima tersebut.UPDATE phrase ini berfungsi sama dengan FORM dan TO atau
USING clause pada SCREEN SECTION dalam DATA DIVISION.
 LENGTH-CHECK phrase
Menyebabkan penekanan tombol carriage-return tidak berfungsi kalau semua posisi
field penerima belum penuh semua.
LENGTH-CHECK phrase berfungsi sama dengan FULL clause pada SCREEN
SECTION dalam DATA DIVISION.
 EMPTY-CHECK phrase
Menyebabkan penekanan tombol carriage-return tidak berfungsi kalau tidak paling
sedikit sebuah karakter atau angka yang bukan sifatnya terminator sudah dimasukkan.
EMPTY – CHECK phrase berfungsi sama dengan REQUIRED clause pada SCREEN
SECTION dalam DATA DIVISION.
 AUTO-SKIP phrase
Menyebabkan proses pemasukkan data bergeser ke field penerima data lain berikutnya,
bila posisi field penerima sudah penuh terisi tanpa harus ditekan tombol carriage-return
atau tombol terminator yang lainnya.
AUTO-SKIP berfungsi sama dengan AUTO clause pada SCREEN SECTION dalam
DATA DIVISION.
 NO-ECHO phrase
Menyebabkan data yang dimasukkan, tidak tampak di layar.
NO-ECHO berfungsi sama dengan SECURE clause pada SCREEN SECTION dalam
DATA DIVISION.
 BEEP phrase
Menyebabkan bunyi bel sewaktu data dimasukkan.
BEEP berfungsi sama dengan BELL clause pada SCREEN SECTION dalam DATA
DIVISION.
5
Teknik Pemrograman Terstruktur 1 ( COBOL )
Bentuk Statement ACCEPT yang ke-4 :
ACCEPT nama-data FROM
DATE
DAY
TIME
ESCAPE-KEY
 DATE, akan mendapatkan 6 digit nilai standard dengan bentuk TTBBHH ( 2 digit
untuk tahun. 2 digit untuk bulan dan 2 digit untuk hari) dari system-date.
 DAY,akan mendapatkan 5 digit nilai “Julian Date” dengan bentuk TTJJJ ( 2 digit untuk
tahun dan 3 Digit menunjukkan jumlah hari dalam setahun untuk tanggal tersebut) dari
System-date.
 TIME, akan mendapatkan 8 digit nilai dengan bentuk JJMMDDSS.
JJ menunjukkan 2 digit jam, berkisar dari nilai 00 sampai dengan bentuk 23.
MM menunjukkan 2 digit menit, berkisar dari nilai 00 sampai dengan 59.
DD menunjukkan 2 digit detik, berkisar dari nilai 00 sampai dengan 59.
SS menunjukkan 2 digit seperseratus detik,berkisar dari 00 sampai dengan 99.
 ESCAPE KEY, akan mendapatkan 2 digit kode yang dihasilkan dari hasil penekanan
tombol-tombol terminator.Terminator adalah tombol yang digunakan untuk mengakhiri
pengerjaan statement ACCEPT.
Contoh Program Bentuk statement ACCEPT :
IDENTIFICATION DIVISION.
PROGRAM-ID. SISDT.
AUTHOR.. RANI.
ENVIRONMENT DIVISION.
DATA DIVISION.
WORKING-STORAGE SECTION.
01
SISTEM-DATE-TIME.
02
TANGGAL
PIC 9(6).
02
JULIAN
PIC 9(5).
02
JAM
PIC 9(8).
PROCEDURE DIVISION.
MULAI.
ACCEPT TANGGAL FROM DATE
ACCEPT JULIAN FROM DAY
ACCEPT JAM FROM TIME.
TAMPILKAN.
DISPLAY ‘ TANGGAL ADALAH : ‘, TANGGAL.
DISPLAY ‘ JULIAN ADALAH
: ‘, JULIAN.
DISPLAY ‘ JAM ADALAH
: ‘, JAM.
STOP RUN.
6
Teknik Pemrograman Terstruktur 1 ( COBOL )
OUTPUT :
TANGGAL ADALAH : 860807
JULIAN ADALAH
: 86219
JAM ADALAH
: 15305834
 STOP verb
Digunakan untuk menghentikan program baik secara permanen maupun secara
sementara saja, yang kemudian proses program dapat dianjurkan kembali.
Bentuknya :
STOP
Literal
RUN
STOP RUN akan menyebabkan proses program berhenti secara permanen, sedang
bentuk STOP yang diikuti oleh literal proses akan berhenti secara permanen. Bila
menekan sembarang tombol, maka proses dilanjutkan.
Contoh :
STOP “ TEKAN SEMBARANG TOMBOL”.
7
Teknik Pemrograman Terstruktur 1 ( COBOL )
Pada Pokok Bahasan ini akan diterangkan tentang verb yang digunakan untuk membentuk
suatu statement yang sifatnya loncatan, meloncat menuju ke suatu proses pada suatu
paragraph tertentu, yaitu
1. GO TO verb.
2. GO TO….DEPENDING verb.
3. ALTER verb.
4. PERFORM verb .
5. EXIT verb.
 GO TO verb
GO TO membentuk loncatan tanpa syarat, yaitu program proses meloncat langsung
tanpa syarat ke nama paragraph yang di tunjuk.
Bentuk Umum nya :
GO TO nama-paragraph
Statement GO TO harus selalu diikuti oleh nama-paragraph.
Contoh :
MOVE A TO B
GO TO ALINEA-5.
ALINEA-4.
ADD X TO Y.
ALINEA-5.
MULTIPLY X BY Y.
 GO TO …….. DEPENDING verb
GO TO …. DEPENDING verb akan membentuk statement yang akan membawa
proses meloncat ( GO TO ) ke suatu nama-paragraph tergantung dari (DEPENDING)
nilai nama-data yang ditunjukkan dalam statement ini.
Bentuk Umumnya :
GO TO nama-paragraph-1, nama-paragraph-2,…
Contoh :
nama-paragraph-n
GO TO TEMPAT-1, TEMPAT-2, HABIS DEPENDING ON KODE.
DEPENDING ON nama-data.
Sebenarnya statement ini menyederhanakan bentuk statement IF untuk suatu kondisi :
IF KODE = 1 GO TO TEMPAT-1.
IF KODE = 2 GO TO TEMPAT-2.
IF KODE KODE = 3 GO TO HABIS.
8
Teknik Pemrograman Terstruktur 1 ( COBOL )
 ALTER Verb
Alter berguna untuk merubah arah tujuan proses dari statement GO TO yang telah ada
didalam program.
Bentuk Umumnya :
ALTER nama-paragraph-1 TO [ PROCEED TO]
nama-paragraph-2
Contoh :
IDENTIFICATION DIVISION.
PROGRAM-ID. ALTER.
AUTHOR. JOGIYANTO HM.
ENVIRONMENT DIVISION.
DATA DIVISION.
PROCEDURE DIVISION.
TAMPILKAN.
DISPLAY ‘ KOMPUTER ‘.
PARA-1.
GO TO PARA-2.
PARA-2.
ALTER PARA-1 TO PROCEED TO SELESAI
GO TO TAMPILKAN.
SELESAI.
Outputnya
: RUN.
STOP
KOMPUTER
KOMPUTER
 PERFORM Verb
PERFORM verb adalah statement yang membawa proses dari suatu
program
meloncat ke suatu paragraph tertentu. Dan setelah mengerjakan seluruh isi paragraph
tersebut dan setelah selesai kembali lagi ke statement setelah statement PERFORM ini.
“ Perbedaan pokok dengan statement GO TO adalah dengan statement GO TO proses
menuju ke suatu nama-paragraph tertentu, tidak kembali ke statemenet setelah GO TO
tetapi proses dilanjutkan ke paragraph berikutnya dari paragraph yang dituju. “
Bentuk Umum ke-1 :
THROUGH
PERFORM nama-paragraph-1
nama-paragraph-2
THRU
9
Teknik Pemrograman Terstruktur 1 ( COBOL )
PERFORM yang diikuti oleh THROUGH atau THRU option akan membawa proses
menuju ke nama-paragraph-1 dan melanjutkan ke nama-pragraph-2, kemudian
mengerjakan statement setelah statement PERFORM
Bentuk Umum ke-2 :
PERFORM nama-paragraph-1 THROUGH
THRU
nama-paragraph-2
Nama-data
Numerik-integer
TIMES
Statement bentuk ini akan membuat paragraph yang akan di proses sebanyak lebih dari
sekali, yang jumlah diwakili oleh nama-data ( numerik – integer).
Contoh :
MULAI.
PERFORM MENCETAK 5 TIMES
STOP RUN.
MENCETAK.
DISPLAY ‘ COBOL ‘ .
OUTPUT :
COBOL
COBOL
COBOL
COBOL
COBOL
Bentuk Umum ke –3 :
PERFORM nama-paragraph-1 THROUGH nama-paragraph-2
THRU
UNTIL kondisi
Perbedaan bentuk ke-3 dengan yang sebelumnya adalah terletak pada adanya kondisi
sebagai akhir dari proses PERFORM atau suatu paragraph di proses berulang kali sampai
suatu kondisi yang di isyaratkan di dalam statement PERFORM terpenuhi.
10
Teknik Pemrograman Terstruktur 1 ( COBOL )
Bentuk Umum ke-4 :
PERFORM nama-paragraph-1 THROUGH
paragraph-2
THRU
VARYING nama-data-1
Nama-index-1
BY
AFTER
nama-data-3
Integer-2
nama-data-4
Nama-index-3
nama-
FROM nama-data-2
integer-1
Nama-index-2
UNTIL kondisi-1
FROM
nama-data-5
integer-3
Nama-index-4
BY
nama-data-6
UNTIL kondisi-2
Integer-4
AFTER
nama-data-7
FROM nama-data-8
Nama-index-5
integer-5
Nama-index-6
BY
nama-data-9
UNTIL kondisi –3
Bentuk ke-4 ini agak rumit. Dengan bentuk ini memungkinkan untuk memproses suatu
Integer-6
paragraph berulang-kali dan akan menyebabkan ( VARYING) nama-data-1 atau namaindex-1 yang bernilai mulai dari (FROM) nama-data-2 atau integer-9 atau nama-data-2
bertambah dengan (BY) nama-data-3 atau integer-2 sampai (UNTIL) suatu kondisi-1
terpenuhi.
 EXIT Verb
Statement EXIT berfungsi untuk melakukan loncatan ke akhir paragraph yang di proses
oleh PERFORM verb.
Penyeleksian suatu kondisi dan pengambilan keputusan adalah bagian yang terpenting di
dalam proses pengolahan data.
Perbedaan antara conditional statement dengan imperative statement yang sudah sering
dijumpai adalah :
- conditional statement adalah suatu statement yang dipergunakan untuk menyeleksi
suatu kondisi/syarat dan akan mengerjakan suatu operasi tergantung dari nilai
kondisinya.
- Imperative statement adalah statement yang langsung mengerjakan operasinya tanpa
ada penyeleksian suatu kondisi.
Semua statement kondisi didalam COBOL dimulai dan dibentuk dengan IF verb.
11
Teknik Pemrograman Terstruktur 1 ( COBOL )
Jenis-jenis dari statement kondisi yaitu :
1. Kondisi yang sederhana (simple conditions)
2. Kondisi tanda ( sign conditions)
3. Kondisi kelas ( class conditions )
4. Kondisi bercabang ( nested conditions )
5. Kondisi dari nama-kondisi ( condition-name condition )
6. Kondisi yang kompleks ( complex conditions ) atau Kondisi jamak ( compound
conditions )
 Kondisi yang sederhana
Dipergunakan untuk menyeleksi kondisi yang tunggal, yaitu membandingkan satu
hubungan antara 2 item. Perbandingan ini ditunjukkan oleh tanda operasi hubungan (
relational operator )
Bentuk umum :
IF
Nama-data-1
Literal-1
lingkaran
Arithmatika
IS [NOT] LESS THAN
IS [NOT] <
nama-data-2
IS [NOT] EQUAL TO
literal-2
IS [NOT] =
lingkaran imperative
IS [NOT] GREATER THAN arithmatika statement
IS [NOT] >
Contoh :
IF A < B MOVE 1 TO C
ATAU
IF A LESS B MOVE 1 TO C
 Kondisi Tanda
Kondisi tanda adalah kondisi untuk menentukan apakah suatu data atau perumusan
(ungkapan arithmatika ) mempunyai nilai sama dengan nol,positif ataukah negatif.
Bentuk dari statement kondisi :
IF
nama-data
ungkapan IS [NOT]
Arithmatika
POSITIVE
NEGATIVE
ZERO
imperative statement
Contoh :
IF A<B IS NOT POSITIF PERFORM TOLAK
 Kondisi Kelas
Adalah kondisi untuk menentukan apakah suatu data (field) termasuk kelas numerik (0
– 9, + , - ) ataukah alphabetik (a-z, blank )
Bentuk umum :
12
Teknik Pemrograman Terstruktur 1 ( COBOL )
IF nama-data IS [NOT]
NUMERIC
ALPHABETIC imperative statement
Contoh :
01 BIAYA.
02 BIAYA-VARIABEL PIC 9(5).
02 BIAYA-TETAP
PIC 9(5).
IF BIAYA - VARIABEL IS NOT NUMERIC
GO TO BERHENTI.
ATAU
01 DATA – PRIBADI
02 NAMA PIC A(20).
02 UMUR PIC 99.
IF NAMA IS ALPHABETIC GO TO PROSES.
DIBAWAH INI SALAH :
IF NAMA IS NUMERIC GO TO PROSES.
IF UMUR ALPHABETIC GO TO ISI-SALAH.
 Kondisi Bercabang
Bentuk Umum :
IF
kondisi
statement-1
NEXT SENTENCE
ELSE statement-2
ELSE NEXT SENTENCE
Dengan statement kondisi ini, bila (IF) suatu kondisi terpenuhi,maka akan dikerjakan
suatu proses yaitu statement-1 atau statement berikutnya (NEXT SENTENCE).
Sebaliknya (ELSE) bila kondisi tidak terpenuhi,maka akan dikerjakan proses yang lain
yaitu statement-2 atau statement berikutnya ( NEXT SENTENCE ).
Contoh :
IF KODE = 1 GO TO KREDIT ELSE GO TO DEBET.
 Kondisi dari nama-kondisi
Suatu nama kondisi dimulai dengan level number 88 ( harus) pada DATA DIVISION.
Sedangkan pada PROCEDURE DIVISION statement kondisi dari nama-kondisi adalah
suatu statement kondisi yang menyeleksi isi dari nilai data yang dikandung oleh namakondisi tersebut.
13
Teknik Pemrograman Terstruktur 1 ( COBOL )
 Kondisi Jamak
Kondisi jamak adalah kondisi yang lebih dari sebuah kondisi, yang merupakan
gabungan beberapa kondisi tunggal ( sederhana ). Beberapa kondisi bisa digabungkan
dengan menggunakan tanda operasi boolean, yaitu : OR, AND dan NOT
Contoh :
IF A = 2 OR B < 6 GO TO CETAK.
Adapun statement khusus yg digunakan pd divisi ini antara lain :
OPEN, READ, WRITE, REWRITE, CLOSE.
Bentuk umum :
PROCEDURE DIVISION.
[ buka-file ]
[ cetak-judul ]
[ alur proses ]
[ tutup file ]
OPEN verb
Digunakan untuk membuka file yg akan diakses.
Bentuk umum :
INPUT
nama-file1 [ , nama-file2 ] ....
OUPUT nama-file3 [ , nama-file4 ] ....
OPEN
I-O
nama-file5 [ , nama-file6 ] ....
EXTEND nama-file7 [ , nama-file8 ] ....
Keterangan :
- OPEN INPUT
Menunjukkan file yg akan dibuka sbg file input, atau data yg akan dibaca ( READ )
dari file ini.
- OPEN OUTPUT
Menunjukkan file yg akan dibuka sbg file output atau data yg akan direkam ( WRITE
) pd file ini. Jika sudah ada data sebelumnya, maka data baru akan direkam & data yg
lama akan terhapus.
Jika akan menambahkan data ke file yg sudah berisi data, maka file harus dibuka
dengan OPEN EXTEND
- OPEN I-O
Menunjukkan file yg dibuka sebagai file-input dan juga sebagai file-output, yaitu file
yg dibuka untuk tujuan sbg input & output sekaligus dapat dibaca & dimodifikasi.
14
Teknik Pemrograman Terstruktur 1 ( COBOL )
CLOSE verb
Setelah operasi file selesai, maka semua file yg digunakan atau file yg masih terbuka harus
ditutup kembali guna mencegah rusaknya struktur dari file.
Bentuk umum :
CLOSE nama-file1 [ WITH LOCK ][ , nama-file2 [ WITH LOCK ] ]
LOCK digunakan bila file yg sudah ditutup tidak dapat dibuka pd saat proses berlangsung,
tetapi bila proses sudah dihentikan dan program dijalankan lagi file dapat dibuka kembali.
WRITE verb
Digunakan untuk menampilkan output ke printer atau merekam data ke file yg ditunjuk.
Bentuk umum :
WRITE nama-record [ FROM nama-data1 ]
BEFORE ADVANCING
AFTER
{ nama-data2 / int } [ LINE ]
PAGE
[ LINES ]
[ ; AT { END OF PAGE/EOP } statement imperatif ]
Keterangan :
- statement WRITE
Penulisan statement WRITE harus diikuti oleh nama-record dg level-number 01 pd
FD di dalam DATA DIVISION yg dihubungkan dg suatu file yg dibuka.
Jika file yg dibuka berupa disk-file, maka statement WRITE berfungsi untuk
merekam data ke dalam file tersebut. Jika file yg dibuka berupa print-file, maka data
akan dicetak pd printer.
- BEFORE option
Menunjukkan banyaknya spasi baris pencetakan antara baris yg sedang dicetak pd
kertas printer dg baris pencetakan selanjutnya.
- AFTER option
Menunjukkan banyaknya spasi baris pencetakan antara baris yang sedang dicetak
pada kertas di printer dengan baris pencetakkan sebelumnya.
- ADVANCING option
Menunjukkan banyaknya spasi baris pencetakkan yang digunakan oleh BEFORE atau
AFTER option, yg ditunjukkan oleh nilai integer atau nama-data2.
integer 0
tanpa spasi
integer 1
1 spasi baris
integer 2
2 spasi baris
integer 3
3 spasi baris
15
Teknik Pemrograman Terstruktur 1 ( COBOL )
Jika BEFORE atau AFTER tidak digunakan, maka pencetakan diprinter akan
dianggap sebagai AFTER ADVANCING 1 LINES
- PAGE option
Digunakan bila data yg dicetak sebelum atau sesudah printer menempati posisi pd
halaman baru selanjutnya.
- END OF PAGE atau EOP phrase
Menunjukkan baris yg terakhir dalam 1 halaman pencetakan diprinter.
READ verb
Digunakan untuk membaca record yg ada pd file.
Bentuk umum :
READ nama-file RECORD [ INTO nama-data ]
[ ; AT END statement imperatif ].
Keterangan :
- INTO option
Digunakan bila data record yg dibaca akan dipindahkan secara langsung ke namadata tertentu.
- AT END clause
Digunakan untuk mengetahui apakah data yg dibaca sudah habis.
contoh :
PROCEDURE DIVISION.
----------------BUKA-FILE.
OPEN INPUT NILAI.
BACA-DATA.
READ NILAI INTO NILAI1 AT END GO TO SELESAI.
TAMPILKAN.
DISPLAY NILAI.
GO TO BACA-DATA.
SELESAI.
CLOSE NILAI.
STOP RUN.
REWRITE verb
Digunakan untuk merekam ulang record yg sudah pernah direkam. Biasanya digunakan
untuk memodifikasi atau memperbaiki data. Record yg direkam ulang adl record terakhir
yg dibaca.
Bentuk umum :
REWRITE nama-record [ FROM nama-data ]
Keterangan :
 Pada waktu REWRITE dilaksanakan, maka file sudah harus dibuka sebagai
input-output file (OPEN I-O)
16
Teknik Pemrograman Terstruktur 1 ( COBOL )
 Nama record setelah perintah REWRITE adl nama record yg sudah dijelaskan
dalam DATA DIVISION pd FILE SECTION
 Jika digunakan FROM, record akan direkam ulang dg nilai data yg ada pd nama
data setelah perintah FROM tersebut
Operasi Arithmatika pada COBOL dikerjakan dengan menggunakan pernyataan :
 ADD
Digunakan untuk menambahkan 2 atau lebih operand numerik dan menyimpan
hasilnya.
Suatu operand adalah suatu data item atau suatu literal numerik (konstanta).Operand
yang digunakan untuk verb ini harus berupa nilai numerik.
Ada 2 Bentuk Umum dari Statemen ADD :
Bentuk ke-1 dari statement ADD :
ADD
Nama-data-1
literal-1
nama-data-2
literal-2 …. TO nama-data-m [ROUNDED]
[; ON SIZE ERROR statement imperative]
CONTOH :
ADD A TO B
B=B+A
ADD 30, B TO A
A = A + 30 + B
ADD A, B TO C
C=C+A+B
Bentuk ke-2 dari statement ADD :
Nama-data-1
nama-data-2
nama-data-3
ADD
….GIVING nama-data-m [ROUNDED]
Literal-1
literal-2
literal-3
CONTOH
:
statement
ADD A, B GIVING[;ON
C SIZE ERROR C
= A + Bimperative]
ADD 4,5 GIVING A
A=4+5
 SUBSTRACT VERB
Digunakan untuk membentuk statement operasi arithmatika pengurangan suatu nilai
operand numerik.
Bentuk umumnya :
Nama-data-1
nama-data-2
SUBSTRACT
literal-1
literal-2
Nama-data-n
FROM
literal-n
GIVING nama-data-m
[ROUNDED] [;ON SIZE ERROR imperative-statement]
17
Teknik Pemrograman Terstruktur 1 ( COBOL )
CONTOH :
SUBSTRACT A FROM B
SUBSTRACT A, B FROM C
SUBSTRACT A FROM B GIVING C
SUBSTRACT 20 FROM 80 GIVING C
SUBSTRACT 20, 15 FROM 100 GIVING B
B=B–A
C=C–A–B
C=B–A
C = 80 – 20
B = 100 – 20 – 15 = 65
 MULTIPLY
Digunakan untuk membentuk statement guna instruksi perkalian dua nilai numerik dan
menyimpan hasilnya.
Bentuk Umum Statement MULTIPLY ke-1 :
Nama-data-1
MULTIPLY
literal-1
BY nama-data-2
[;ON SIZE ERROR imperative statement]
Contoh :
MULTIPLY A BY B
B=B*A
Bentuk umum statement MULTIPLY ke-2 :
MULTIPLY
Nama-data-1
literal-1
BY
nama-data-2
literal-2
GIVING nama-data-3 [ROUNDED]
[;ON SIZE ERROR imperative statement]
CONTOH :
MULTIPLY A BY D GIVING C
MULTIPLY A BY 25 GIVING C
C=A*D
C = A * 25
 DIVIDE
Digunakan untuk membentuk statement operasi pembagian .
Bentuk Statemen DIVIDE yang ke-1 :
DIVIDE
Nama-data-1
literal-1
INTO nama-data-2 [ ROUNDED]
[;ON SIZE ERROR imperative statement]
CONTOH :
DIVIDE A INTO B
B=B/A
18
Teknik Pemrograman Terstruktur 1 ( COBOL )
Bentuk Statemen DIVIDE yang ke-2 :
DIVIDE
Nama-data-1
literal-1
INTO
nama-data-2
literal-2
GIVING nama-data-3 [ROUNDED]
[;ON SIZE ERROR imperative statement]
CONTOH :
DIVIDE A INTO B GIVING C
C=B/A
Bentuk Statemen DIVIDE yang ke-3 :
DIVIDE
Nama-data-1
literal-1
nama-data-2
literal-2
BY
GIVING nama-data-3 [ROUNDED]
[;ON SIZE ERROR imperative statement]
CONTOH :
DIVIDE A BY B GIVING C
DIVIDE 100 BY 50 GIVING Z
C=A/B
Z=2
Bentuk Statement DIVIDE yang ke-4 :
DIVIDE
Nama-data-1
literal-1
INTO
nama-data-2
literal-2
GIVING nama-data-3 [ROUNDED]
REMAINDER nama-data-4
Contoh :
[;ON SIZE ERROR imperative statement]
DIVIDE A INTO B GIVING HASIL REMAINDER SISA
BILA A = 2, B = 5 MAKA HASIL = 2 SISA =1
Bentuk Statemen DIVIDE yang ke-5 :
DIVIDE
Nama-data-1
literal-1
BY
nama-data-2
literal-2
GIVING nama-data-3 [ROUNDED]
REMAINDER nama-data-4
[;ON SIZE ERROR imperative statement]
CONTOH :
DIVIDE A BY B GIVING D REMAINDER SISA
19
Teknik Pemrograman Terstruktur 1 ( COBOL )
BILA A = 110 , B = 20 MAKA D = 5 SISA =10
 COMPUTE
Mempergunakan 4 arithmatika verbs untuk perhitungan arithmatika tunggal dan
sederhana.
Bentuk Umum :
COMPUTE nama-data-1 [ROUNDED] = ungkapan arithmatika
[;ON SIZE ERROR imperative statement]
CONTOH :
MULTIPLY A BY D GIVING C
COMPUTE C = A * D
5
Y=A
COMPUTE Y = A**5
Y=A+B
COMPUTE Y = ( A + B ) / C
C
ROUNDED :
Untuk membulatkan hasil perhitungan yang berbentuk pecahan.
ON SIZE ERROR :
Digunakan jika hasil perhitungan untuk digit – digit bilangan utuh tidak bisa masuk
seluruhnya pada field penerima.
 OPERATOR ARITHMATIKA
Adalah simbol yang digunakan untuk membentuk suatu ungkapan arithmatika,yaitu :
Operator arithmatika
**
*
/
+
-
Maksud
Pangkat
Kali
Bagi
Tambah
Kurang
jenjang
1
2
2
3
3
 OPERATOR RELATIONAL
Maksud
Lebih kecil dari
Lebih besar dari
Sama dengan
Lebih kecil atau sama dengan
Lebih besar atau sama dengan
Tidak sama dengan
Operational Relational
<
LESS THAN
>
GREATER THAN
=
EQUAL TO
NOT>
NOT GREATER THAN
NOT<
NOT LESS THAN
NOT=
NOT EQUAL TO
20
Teknik Pemrograman Terstruktur 1 ( COBOL )
 UNGKAPAN ARITHMATIKA
Adalah Kombinasi dari literal numerik, nama-data, operator arithmatika, kurung
buka dan kurung tutup.
Penulisannya harus dipisahkan paling sedikit dengan sebuah blank antara literal
numerik, nama-data dan operator arithmatika.
Contoh:
Maksud
A+B
A+B
C+D
A2
( B + C )3
Penulisan
A+B
(A+B) / (C+D)
A**2/(B+C)**3
 Ungkapan Arithmatika banyak digunakan pada verb COMPUTE ( lihat bab 12).
21
Download