Membuat Program Array dengan COBOL
By F - 8:04 AM
ARRAY
Array (larik)
merupakan tipe data terstruktur dimana didalamnya terdiri dari komponen –
komponen yang mempunyai tipe data yang sama. Didalam suatu array jumlah
komponen banyaknya adalah tetap. Didalam suatu larik atau array setiap
komponen ditunjukan oleh suatu index yang unik. Index dari setiap komponen
array menunjukan urutan data atau identitas yang mewakili data yang ada
didalamnya.
Macam-macam
array :
a. Array satu dimensi
b. Array multi dimensi
Pengertian
dari macam macam array pada cobol :
a. Array satu dimensi
adalah adalah struktur data yang statis yang mempunyai 1 nama tetapi
memiliki banyak tempat.
Array multi dimensi merupakan sebuah
variabel yang menyimpan sekumpulan data yang memiliki tipe sama dan elemen yang
akan diakses melalui banyak indeks atau subskrip.
Pada praktikum kali ini, kita diberi
laporan akhir untuk membuat program array. Program yang dibuat adalah elemen
matriks dan data nama. Untuk memulai sebuah program, sebaiknya terlebih dahulu
kita persiapkan aplikasi COBOL, cmd atau dosBOX dan notepad.
Karena berbagai macam gangguan dan
error, maka saya mencoba untuk membuat kodingan di notepad. Seperti biasa,
untuk membuat kodingan di notepad kita harus menentukan kolomnya dahulu dengan
hati-hati agar tidak terjadi error saat dirun. untuk kodingan, maka lihat
gambar di halaman selanjutnya.
Penjelasan kodingan :
a.
Setiap memulai sebuah pemrograman dalam cobol
hendaknya kita menaruh perintah “IDENTIFICATION
DIVISION”. Karena saya tadi tidak sengaja menghapus identification division
( lihat gambar ) maka langsung saja saya jelaskan ke intinya. Jadi, divisi ini
digunakan untuk mengidentifikasikan program yang akan kita buat. Di dalam
identification division ini, ada Program-ID yang digunakan untuk memberi nama
program yang sedang dibuat. Dan author yang berfungsi untuk mengetahui nama
programmer yang buat program tersebut.
b.
ENVIRONMENT
DIVISION dalam program COBOL berisi informasi mengenai peralatan atau komputer
yang digunakan dalam membuat program tersebut.
c.
DATA DIVISION, di divisi ini,
kita bisa melihat variable-variable dan jenis tipe data yang digunakan dalam
program itu sendiri. Di divisi ini, terdapat 5 section yaitu : file
section, working-storage section, screen section, linkage section, dan report
section. Diantara 5 section tersebut, yang dipakai untuk program ini adalah
working-storage section.
Working-storage section ini berfungsi
untuk mendeklarasikan tipe data dan variable yang digunakan.
Kemudian selanjutnya ada 01
VARIABEL. Berarti
01 digunakan untuk mengawali keterangan dari record (record description). untuk
menu dalam penginputan di memorinya dalam sub
pertama diberi
nama VARIABEL
02
NILAI –X OCCURS 2 TIMES maksudnya untuk
mengawali keterangan dari data item dengan nilai-x occurs sendiri adalah file
indeks/ data indeks dalam secara berurutan sebanyak 2 kali.
03 NILAI PIC 9 OCCURS 2
TIMES berarti variable nilai hanya mengandung data numeric saja dan hanya
terjadi sebanyak 2 kali.
77 I PIC 99 data item
berdiri sendiri dengan nama variable I kemudian hanya mengandung nilai-nilai
numeric saja dan pasti jika angka terisi hanya satu nomor saja maka didepannya
akan ditambahkan 0.
77 J PIC 99 masih sama
seperti diatas, artinya data item berdiri sendiri dengan nama variable J dan
mengandung nilai nilai numeric saja.
d.
SCREEN SECTION berfungsi untuk
menentukan format layar tampilan baik input dan output, juga berhubungan dengan
perintah DISPLAY dan ACCEPT.
01 CLS
02
Blank screen
Perintah agar saat program dijalankan, kondisi layar akan kosong atau
blank.
e.
PROCEDURE
DIVISION.
Divisi ini merupakan bagian penting dalam COBOL karena digunakan untuk
menaruh berbagai statement yang ada di program.
-
Mulai
Perintah ini selalu digunakan untuk memulai sebuah program
-
DISPLAY CLS Perintah ini dimaksudkan untuk
mengaktifkan dan memunculkan perintah cls atau penghapusan layar dari kodingan
sebelumnya.
-
DISPLAY ‘—MASUKKAN ELEMENT MATRIKS---‘
Maksudnya memunculkan tulisan --masukkan element matriks---
-
DISPLAY ‘ ‘.
-
PERFORM ISI-DATA
Perintah perform ini dipakai untuk membuat suatu program meloncat ke
suatu
paragraph tertentu dan
mengerjakan seluruh isi paragraph tersebut sampai selesai lalu kembali lagi
ke statement setelah PERFORM. Jadi maksudnya, kita harus menyelesaikan terlebih
dahulu kondisi tersebut sampai selesai maka nanti baru bisa melanjutkan ke
perintah sesudahnya.
VARYING I FROM 1
BY 1 UNTIL I > 2
AFTER J FROM 1
BY 1 UNTL J > 2
Di perintah perform isi-data
ini, akan berhubungan dengan kodingan yang ISI-DATA dibawah. Jadi kan VARYING I
FROM 1 BY 1 itu I nya dimulai dari 1 nah karena I nya 1 maka jadinya 1 > 1. Karena
kondisinya false jadi yang dicetak 1. Terus karena tadi ada var 99, angkanya
gak boleh keisi satu aja makanya ditambahin 0 didepannya jadi yang kecetak
tulisannya 01. Terus kan abis itu balik lagi ke I nya jadi 1 tapi Jnya nambah
jadi 2 makanya I > 2 kondisinya false terus kecetak lagi jadi 01,02. Langkah
selanjutnya juga sama buat nentuin 02 nya.
I
|
J
|
I > 2
|
J > 2
|
CETAK
|
1
|
1
|
1 > 1
|
1 > 1
|
01,01
|
1
|
2
|
1 > 2
|
1 > 2
|
01,02
|
2
|
1
|
2 > 1
|
2 >1
|
02,01
|
2
|
2
|
2 > 2
|
2 > 2
|
02,02
|
-
DISPLAY ‘ ‘.
Untuk mengenter atau membuat baris baru.
-
DISPLAY ‘ ELEMENT MATRIKS ‘
Menampilkan tulisan elemen matriks
-
PERFORM TAMPILKAN-DATA
VARYING I FROM 1 BY 1 UNTIL I > 2
AFTER J FROM 1 BY 1 UNTIL J > 2
Sama seperti perform isi-data, perform tampilkan data ini mengambil dari
perintah tampilkan data dibawah.
-
AKHIR
Ini menandai bawah kita sudah berada di akhir statement.
-
STOP RUN.
Memberhentikan
program.
-
ISI-DATA
DISPLAY (
, ) ‘NILAI-KE = (‘, I, ‘, ‘,
J, ‘) = ‘.
ACCEPT NILAI (I , J)
Jadi di bagian isi data, nanti akan muncul tulisan
nilai ke, kemudian nanti kita isi misal mau nilai ke-nya 2. Maka akan muncul seperti di gambar output.
Terus kalo accept itu maksudnya menerima atau menyimpan nilai di J tadi.
-
TAMPILKAN DATA
-
DISPLAY NILAI
( ,
) (I ,
J) berarti menampilkan nilai yang
tadi kita outputkan ke nilai ke.
-
Saya akan langsung menjelaskan dari intinya. Jadi,
01 Awal berarti memulai sebuah record.
02 NAMA pic x(20) occurs 10 times ini maksudnya nama dengan tipe data
character yang mempunyai maksimal length sebanyak 20 dan terjadi sebanyak 10
kali.
02 NPM pic x(6) occurs 10 times NPM tipe datanya char mempunyai maksimal
length sebanyak 6 dan terjadi 10 kali.
02 KELAS pic x(8) occurs 10 times
Kelas tipe datanya char mempunyai maksimal length 8 dan terjadi 10 kali.
77 I pic 99
77 J pic 99
Berarti data item berdiri sendiri dengan nama ‘I’ dan ‘J’ dengan tipe
data numeric sebanyak 2 digit. Jadi jika tidak satu digit maka akan ditambahkan
0 di depannya.
Terus di bagian procedure division :
-
Mulai
Untuk
mengawali sebuah program.
-
DISPLAY (
, ) ‘INPUT JUMLAH DATA: ‘, ACCEPT
N.
Memunculkan
tampilan tulisan input jumlah data, kemudian setelah itu nanti Variabel N akan
disimpan di sebelahnya.
-
PERFORM HASIL VARYING I FROM 1 BY 1 UNTIL I > N
Jadi perform
hasil ini harus dijalankan terlebih dahulu sampai selesai, lalu jika sudah
selesai maka kita bisa lanjut ke perintah selanjutnya. Varying I from 1 by 1
until I > N ini jadi kan kita tadi disuruh input data di N, misalkan 2. Nah
terus nanti kita akan melakukan kondisi sebanyak maksimal 2.
-
DISPLAY CLS
Menampilkan
pembersih layar
-
PERFORM TAMPIL VARYING I FROM 1 BY 1 I > N
Sama seperti
tadi di hasil, hanya saja disini yang akan tampil nama npm kelas sebanyak data
yang diinput.
-
SELESAI.
STOP RUN.
Di
record selesai ada stop run yang berfungsi untuk memberhentikan program.
HASIL.
DISPLAY CLS.
Untuk menghapus layar dari program sebelumnya
DISPLAY (3, 4) 'DATA KE-', I.
Jadi di kolom 3 baris 4 akan ada muncul
tulisan DATA-KE kemudian I itu dari hasil
yang perform hasil varying
DISPLAY (5, 4) 'NAMA :', ACCEPT NAMA(I).
Di kolom 5 baris 4 akan muncul nama :
DISPLAY (6, 4) 'KELAS :', ACCEPT
KELAS(I).
Di kolom 6 baris 4 akan muncul kelas
:
DISPLAY (7, 4) 'NPM :', ACCEPT NPM(I).
Di kolom 7 baris 4 akan muncul npm
TAMPIL.
DISPLAY SPACE.
Untuk enter
DISPLAY 'NAMA :', NAMA(I).
Memunculkan nama
DISPLAY 'KELAS :', KELAS(I).
Memunculkan kelas
DISPLAY 'NPM
:', NPM(I)
Memunculkan npm
0 comments