Langsung ke konten utama

MENAMPILKAN ARRAY DIMENSI-3

Hasil gambar untuk cobol

Pada kali ini saya akan menampilkan array dimensi-3

IDENTIFICATION DIVISION.
PROGRAM-ID. dimensi3.
ENVIRONMENT DIVISION.
DATA DIVISION.

WORKING-STORAGE SECTION.
01 ws-subscript.
02 subscript-cabang PIC 9.
02 subscript-bulan PIC 9.
02 cabang OCCURS 3 TIMES.
03 bulan OCCURS 3 TIMES.
04 jumlah-unit-terjual PIC 99.
77 total-penjualan-cabang PIC 99 VALUE 
PROCEDURE DIVISION.
program-utama.
PERFORM entry-tabel.
PERFORM tampilkan-tabel.
STOP RUN.

isi-data-tabel.
DISPLAY 'Cabang ', subscript-cabang,
' Bulan ', subscript-bulan, ' : '.
ACCEPT  ,  jumlah-unit-terjual
(subscript-cabang, subscript-bulan).
DISPLAY SPACE.

entry-tabel.
DISPLAY 'Pemasukan data ke dalam tabel dimensi tiga: '.
PERFORM isi-data-tabel
VARYING subscript-cabang FROM 1 BY 1
UNTIL subscript-cabang > 3
AFTER subscript-bulan FROM 1 BY 1
UNTIL subscript-bulan > 3.

display-data-tabel.
DISPLAY  ,  'Cabang ', subscript-cabang,
' Bulan ', subscript-bulan, ' : ',
jumlah-unit-terjual (subscript-cabang, subscript-bulan).
DISPLAY SPACE.
ADD jumlah-unit-terjual (subscript-cabang, subscript-bulan)
TO total-penjualan-cabang.
IF (subscript-bulan = 3)
DISPLAY '*** Total penjualan per cabang = ',
total-penjualan-cabang.      

tampilkan-tabel.
DISPLAY 'Menampilkan isi tabel berdimensi tiga : '.
PERFORM display-data-tabel
VARYING subscript-cabang FROM 1 BY 1
UNTIL subscript-cabang > 3
AFTER subscript-bulan FROM 1 BY 1
UNTIL subscript-bulan > 3.

Penjelasan Algoritma Program
-Mendeklarasikan variabel subscript-cabang dan subscript-bulan dengan PIC 9,variabel cabang dan bulan dengan OCCURS 3 TIMES (batasan perulangannya tiga kali), variabel jumlah-unit-terjual dengan PIC 99 dan total-penjualan-cabang dengan PIC 99 VALUE 0.

-Procedure isi-data-tabel berfungsi untuk menampilkan cabang ke berapa dan bulan ke berapa dengan perintah DISPLAY, kemudian ACCEPT digunakan untuk memanggil kembali nilai-nilai yang diinput sehingga muncul sesuai dengan DISPLAY yang dibuat.

-Pada procedure entry-tabel hanya perlu memanggil procedure isi-data tabel yang sudah dibuat dengan perintah PERFORM.
VARYING subscript-cabang FROM 1 BY 1
UNTIL subscript-cabang > 3
AFTER subscript-bulan FROM 1 BY 1
UNTIL subscript-bulan > 3.

Fungsinya perintah program nya adalah untuk melakukan looping sebanyak subscript- cabang satu demi satu sampai dengan subscript-cabang.

-Procedure display-data-tabel akan menjalankan proses dari procedure entry-label ketika subscript-bulan lebih dari 3 maka lanjut ke procedure display-data-tabel ini. Cabang dan bulan akan tampil beserta hasil yang telah diinput pada variabel jumlah-unit-terjual.
ADD jumlah-unit-terjual (subscript-cabang, subscript-bulan)
TO total-penjualan-cabang.
IF (subscript-bulan = 3)
DISPLAY '*** Total penjualan per cabang = ',
total-penjualan-cabang.
perintah diatas digunakan untuk menambahkan jumlah-unit-terjual dengan parameter subscript-cabang dan subscript-bulan yang telah diinput sampai total-penjualan-cabang. Jika di setiap subscript-bulan sama dengan 3, maka akan ditampilkan hasil totalnya setiap 3 input-an dan totalnya akan bertambah hingga cabang dan bulan yang paling akhir.

- Pada line procedure tampilkan-tabel hampir sama seperti procedure entry-tabel, yaitu lakukan PERFORM display-data-tabel disertai loop-ing.

- Procedure pada saat terakhir yang digunakan adalah procedure program-utama. Disini kita perlu memanggil prosedure-prosedure sebelumnya menggunakan perintah PERFORM dan ketik STOP RUN untuk mengakhiri atau menghentikan program diatas

Komentar

Postingan populer dari blog ini