Logika Cobol – Program Array 2 Dimensi

Coding COBOL Array

Coding COBOL Array 2 Dimensi

Program diatas adalah program array dengan 2 dimensi. Langsung masukke bagian working-storage section. Terdapat label variabel yang berisi pendeklarasian beberapa variabel. Variabel I, J, JMLBRS, dan JMLKOL akan memiliki tipe data numeric dengan maksimal character  adalah 2. Lalu Nilai-X akan muncul atau berulang sebanyak 10 kali. Didalam nilai-x terdapat variabel nilai yang memiliki tipe data numeric dan juga bisa berulang sebanyak 10 kali tapi masih tergantung dengan nilai dari variabel JMLKOL.

Pada bagian screen section terdapat label CLS yang berisi blank screen untuk menghapus layar.

Masuk ke bagian inti yaitu procedure division.

Prosedur pertama bernama AWAL, akan melakukan :

  1. Menampilkan prosedur  CLS yang ada pada screen section.
  2. Menampilkan pertanyaan untuk user berapa banyak baris yang diinginkan, pada baris 1 kolom 1.
  3. Program akan menerima inputan user lalu inputan ini akan menjadi nilai dari  variabel JMLBRS.
  4. Menampilkan pertanyaan untuk ser berapa banyak kolom yang diinginkan, pada baris 2 kolom 1.
  5. Program akan menerima inputan user lalu inputan ini akan menjadi nilai dari  variabel JMLKOL.
  6. MOVE 4 TO LIN berarti nilai LIN akan menjadi 4.
  7. Lalu program akan melakukan prosedur ISI-DATA, prosedur ini dilakukan beberapa kali(perulangan). Dan perulangan disini merupakan perulangan dalam perulangan. Dari nilai I 1 sampai dengan nilai I lebih besar dari JMLBRS, program akan melakukan perulangan setelah nilai J dari 1 ditambahkan 1-1 sampai dengan nilai J lebih besar dari JMLKOL. Ini berarti nilai J/ Kolom dulu yang akan dipenuhi lebih dulu. Karena kali ini user menginput 2 untuk JMLKOL dan 3 untul JMLBRS maka program akan melakukan seperti ini à ketika nilai I 1 maka program akan memenuhi masing-masing dari nilai(1,J) , maka yang diinput duluan adalah nilai (1,1), lalu (1,2), karena J yang pertama sudah terpenuhi maka akan masukke nilai I selanjutnya dan seterusnya seperti itu.
  8. MOVE 4 TO LIN, maka nilai LIN akan menjadi 4 lagi (ini diperlukan karena pada prosedur-prosedur selanjutnya nilai LIN akan dirubah setiap perulangannya).
  9. Lalu program akan melakukan prosedur TAMPILKAN-DATA, dari nilai I mulai dari 1 ditambahkan 1-1 setiap perulangannya sampai dengan nilai I lebih besar dari JMLBRS, hanya dilakukan setelah nilai J dari 1 ditambahkan 1-1 sampai dengan nilai dari J lebih besar dari JMLKOL. Hal ini sama seperti penjelasan nomor 7. Hanya bedanya, pada prosedur ISI-DATA, program akan meminta input  saat setiap perulangannya, sedangkan pada prosedur ini, program hanya akan menampilkan data.

Prosedur kedua yaitu AKHIR. Berisi : STOP RUN untuk menghentikan jalannya program.

Prosedur ketiga yaitu ISI-DATA. Prosedur ini merupakan yang dipanggil atau di-perform saat penjelasan nomor 7 pada prosedur AWAL.

  1. Program akan menampilkan NILAI KE I,J (Tergantung nilai I, J yang sedang dibaca saat perulangan terjadi. Ini akan ditampilkan di baris ke 4 karena nilai LIN yang memiliki nilai 4, dan kolom ke 1.
  2. Program akan menampilkan content atau isi nilai dari variabel NILAI(I,J) pada baris yang sama, namun kolom 18 , karena tidak ada, selanjutnya maka program akan meminta inputan untuk nilai tersebut.
  3. Lalu nilai LIN akan bertambah 1, dengan ini maka setiap perulangan terjadi maka apa yang dicetak pada perulangan ini akan tercetak 1 baris lebih bawah di setiap perulangannya.

Prosedur keempat yaitu TAMPILKAN-DATA. Prosedur ini merupakan yang dipanggil atau di perform saat penjelasan nomor 9 di prosedur AWAL.

  1. Program akan menam menampilkan NILAI KE I,J (Tergantung nilai I, J yang sedang dibaca saat perulangan terjadi. Ini akan ditampilkan di baris ke 4 karena nilai LIN yang diubah kembali menjadi memiliki nilai 4, dan kolom ke 25.
  2. Program akan menampilkan content atau isi nilai dari variabel NILAI(I,J) pada baris yang sama, namun kolom 422.
  3. Compute berarti mengoprasikan nilai LIN, nilai LIN akan ditambahkan 1. Karena prosedur ini masuk kedalam perulangan yang ada di prosedur AWAL, maka tampilan yang ada pada prosedur ini pun akan tercetak 1 baris lebih bawah setiap perulangannya dikarenakan nilai LIN yang ditambahkan 1.

Berikut adalah OUTPUT program secara keseluruhan :

Output Program Array 2 Dimensi

Output Program Array 2 Dimensi

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s