Table dimensi 2

IDENTIFICATION DIVISION.
PROGRAM-ID. tabel2.
ENVIRONMENT DIVISION.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 ws-subscript.
02 subscript-cabang PIC 9.
02 subscript-bulan PIC 9.
01 tabel-penjualan-mobil.
02 cabang OCCURS 4 TIMES.
03 bulan OCCURS 3 TIMES.
04 jumlah-unit-terjual PIC 99.
77 total-penjualan-cabang PIC 99 VALUE 0.
SCREEN SECTION.
01 hapus-layar.
02 BLANK SCREEN.
PROCEDURE DIVISION.
program-utama.
PERFORM entry-tabel.
PERFORM tampilkan-tabel.
STOP RUN.
entry-tabel.
DISPLAY ' Pemasukan data ke dalam tabel dimensi dua: '.
PERFORM isi-data-tabel
VARYING subscript-cabang FROM 1 BY 1
UNTIL subscript-cabang > 4
AFTER subscript-bulan FROM 1 BY 1
UNTIL subscript-bulan > 3.
isi-data-tabel.
DISPLAY 'Cabang', subscript-cabang,
' Bulan ', subscript-bulan, ' : '.
ACCEPT jumlah-unit-terjual
(subscript-cabang, subscript-bulan).
DISPLAY SPACE.
tampilkan-tabel.
DISPLAY hapus-layar.
DISPLAY ' Menampilkan isi tabel berdimensi dua : '.
DISPLAY SPACE.
PERFORM display-data-tabel
VARYING subscript-cabang FROM 1 BY 1
UNTIL subscript-cabang > 4
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).
ADD jumlah-unit-terjual (subscript-cabang, subscript-bulan)
TO total-penjualan-cabang.
IF (subscript-bulan = 3)
DISPLAY '*** Total penjualan per cabang = ',
total-penjualan-cabang
MOVE 0 TO total-penjualan-cabang.
PENJELASAN ALGORITMA :
Pertama buatlah variabel cabang "PIC 9" dan bulan "PIC 9" dengan batas pengulangan 3 kali buat juga variabel jumlah unit "PIC 99" dan variabel total penjualan cabang "PIC99" dengan value 0.
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.
Pertama buatlah variabel cabang "PIC 9" dan bulan "PIC 9" dengan batas pengulangan 3 kali buat juga variabel jumlah unit "PIC 99" dan variabel total penjualan cabang "PIC99" dengan value 0.
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 0.
Buatlah sebuah procedure division digunakan untuk pengulangan
PROCEDURE DIVISION.
program-utama.
PERFORM entry-tabel.
PERFORM tampilkan-tabel.
STOP RUN.
program-utama.
PERFORM entry-tabel.
PERFORM tampilkan-tabel.
STOP RUN.
Selanjutnya buatlah sebuah procedure guna menampilkan cabang dan bulan dengan sebuah perintah DISPLAY ,lalu gunakan perintah ACCEPT guna untuk memanggil nilai yang diinput yang akan muncul pada perintah display yang dibuat.
isi-data-tabel.
DISPLAY 'Cabang ', subscript-cabang,
' Bulan ', subscript-bulan, ' : '.
ACCEPT , jumlah-unit-terjual
(subscript-cabang, subscript-bulan).
DISPLAY SPACE.
DISPLAY 'Cabang ', subscript-cabang,
' Bulan ', subscript-bulan, ' : '.
ACCEPT , jumlah-unit-terjual
(subscript-cabang, subscript-bulan).
DISPLAY SPACE.
Untuk procedur entry hanya memerlukan pemanggilan terhadap isi table yang sudah dibuat pada perintah PERFORM.
entry-tabel.
DISPLAY 'Pemasukan data ke dalam tabel
dimensi tiga: '.
PERFORM isi-data-tabel
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.
Pada script diatas digunakan sebuah looping yakni di gunakan pada saat pengulangan entry sudah 3x maka akan dilanjutkan ke program berikutnyayakni penjumlahan total hasil entry cabang yang di simpan pada total penjualan cabang.
Contoh output program :
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.
Pada script diatas digunakan sebuah looping yakni di gunakan pada saat pengulangan entry sudah 3x maka akan dilanjutkan ke program berikutnyayakni penjumlahan total hasil entry cabang yang di simpan pada total penjualan cabang.
Contoh output program :
komen teh sing bener atuh mang :^
BalasHapusRiweuh
Hapus