Desember 08, 2011

LOGIKA PROGRAM AP3 PERT 4

Logika program
Ini adalah program penjumlahan matriks menggunakan COBOL. Pada program ini
kita juga akan menggunakan bentuk table di dalamnya. Pembuatan table menggunakan
perintah occurs yang dimuat dalam working-storage section.
IDENTIFICATION DIVISION.
PROGRAM-ID. MATRIKS.
ENVIRONMENT DIVISION.
Pada awal program cobol adalah suatu kewajiban untuk membuat divisi – divisi yang
Nampak seperti di atas.
DATA DIVISION.
WORKING-STORAGE SECTION.
77I PIC 99.
77J PIC 99.
Pada bagian data division yaitu pada working-storage section kita deklarasikan dahulu
variabel yang sifatnya berdiri sendiri, yaitu variabel I dan J, dengan nilai numeriknsebanyak
2 digit angka.
01 CETAK.
02 M1 PIC Z9.
02 M2 PIC Z9.
02 T PIC Z9.
Kemudian kita buat satu record bernama cetak, dengan item di dalamnya adalah variabel
m1, m2, dan t.
01 TOTAL.
02 TOTAL-BARIS OCCURS 2 TIMES.
03 TM OCCURS 2 TIMES PIC 999.
01 DATA1.
02 BARIS1 OCCURS 2 TIMES.
03 MATRIK1 OCCURS 2 TIMES PIC 99.
01 DATA2.
02 BARIS2 OCCURS 2 TIMES.
03 MATRIK2 OCCURS 2 TIMES PIC 99.
perintah di atas digunakan untuk membuat variabel larik atau array. Ada 3 variabel array
yang dibuat di sana, yaitu TM, matrik1, dan matrik2. Ketiga variabel itu mempunyai panjang
baris dan kolom yang sama, yaitu 2.
SCREEN SECTION.
01 HAPUS-LAYAR.
02 BLANK SCREEN.
01 TANDA.
02 LINE 3 COLUMN 16 VALUE '+' HIGHLIGHT.
02 LINE 3 COLUMN 31 VALUE '=' HIGHLIGHT.
Pada bagian screen section kita membuat perintah untuk membersihkan layar
menggunakan perintah blank screen, dan akan menampilkan symbol juga nantinya saat
program dijalankan. Yaitu symbol + , dan =. Yang letaknya pada baris ke 3, dan kolom ke
16, dan 31.
Pada awal bagian procedure division terdapat paragraph mulai, paragraph mulai akan kita
bahas nanti, pertama kita akan membahas tentang paragraph untuk memasukkan nilai
matriksnya.
ISI1.
DISPLAY (3, 2) 'MATRIK 1'.
COMPUTE LIN = LIN + 1.
DISPLAY (LIN, 2) 'ELEMEN [', I, ', ', J, '] = '.
ACCEPT MATRIK1 (I, J).
ISI2.
DISPLAY (10, 2) 'MATRIK 2'.
COMPUTE LIN = LIN + 1.
DISPLAY (LIN, 2) 'ELEMEN [', I, ', ', J, '] = '.
ACCEPT MATRIK2 (I, J).
Ada dua paragraph, isi1, dan isi2. Kedua paragraph tersebut digunakan untuk perintah
pemasukan nilai ke dalam variabel array yang telah dibuat. LIN di atas berguna untuk
menentukan posisi pencetakan kata elemen [i,j]. nilai pada variabel lin akan bertambah
sesuai dengan jumlah perulangan yang nantinya dilakukan.
MULAI.
MOVE 3 TO LIN.
DISPLAY HAPUS-LAYAR.
PERFORM ISI1
VARYING I FROM 1 BY 1 UNTIL I > 2
AFTER J FROM 1 BY 1 UNTIL J > 2
COMPUTE LIN = 10.
PERFORM ISI2
VARYING I FROM 1 BY 1 UNTIL I > 2
AFTER J FROM 1 BY 1 UNTIL J > 2
Pada awal paragraph mulai kita memberikan nilai awal 3 ke dalam variabel LIN. Kemudian
akan dipanggil paragraph ISI1 dengan dilakukan perulangan untuk penginputan nilainya.
Dilakukan 2 kali perulangan pertama untuk baris, lalu kolom. Batas yang diberikan sampai
nilai I, dan j lebih dari 2, jika nilainya melebihi 2, maka perulangan akan terhenti.
PROSES.
COMPUTE TM (I, J) = MATRIK1 (I, J) + MATRIK2 (I, J).
Pada paragraph proses dilakukan perhitungan untuk menjumlahkan matriks. Lalu paragraph
ini akan dipanggil nantinya.
PERFORM PROSES
VARYING I FROM 1 BY 1 UNTIL I > 2
AFTER J FROM 1 BY 1 UNTIL J > 2
Dilakukan perintah perulangan juga untuk menjumlahkan nilai pada variabel mtriks1, dan
matriks2. Dilakukan proses ini karena agar mempermudah proses penjumlahan, karena
yang akan dijumlahkan adalah nilai – nilai yang ada pada variabel array.
HASIL.
MOVE I TO LIN.
MOVE J TO COL.
MOVE MATRIK1 (I, J) TO M1.
MOVE MATRIK2 (I, J) TO M2.
MOVE TM (I, J) TO T.
COMPUTE LIN = LIN * 2.
COMPUTE COL = COL * 4.
DISPLAY (LIN, COL + 1) M1.
DISPLAY (LIN, COL + 16) M2.
DISPLAY (LIN, COL + 31) T.
Nilai pada variabel I dipindahkan ke variabel LIN, dan J ke dalam COL. Dan juga nilai pada
variabel matrik1 ke m1, dan juga m2. Dan total matriks pada variabel TM dipindahkan ke T.
perhitungan LIN, dan COL dilakukan untuk pengaturan letak tampilan hasil nantinya.
Dimana letaknya sudah diatur dalam paragraph ini.
DISPLAY HAPUS-LAYAR.
DISPLAY TANDA.
PERFORM HASIL
VARYING I FROM 1 BY 1 UNTIL I > 2
AFTER J FROM 1 BY 1 UNTIL J > 2
Saat nilai matriks sudah diisi semua, maka tampilannya akan terhapus dan digantikan
dengan tampilan pada paragraph hasil, dan juga tampilan symbol yang telah dibuat pada
screen section tadi. Pada paragraph hasil perulangan dilakukan sebanyak 2 kali untuk
mencetak nilai – nilai matriks pada masing – masing variabel, dan juga untuk mencetak
hasilnya juga.

Tidak ada komentar:

Posting Komentar