IDENTIFICATION DIVISION.
PROGRAM-ID. LA.
ENVIRONMENT DIVISION.
DATA DIVISION.
WORKING-STORAGE SECTION.
77 STOK PIC X(10).
77 PCS PIC 9.
77 TOTAL PIC 9(6).
77 HARGA PIC 9(6).
77 BAYAR PIC 9(10).
77 DISKON PIC 9(6).
77 KEMBALI PIC 9(10)
77 KEMBALIAN PIC 9(6).
PROCEDURE DIVISION.
MULAI.
DISPLAY ( , ) "Ingin Membeli Apa [KAOS/CELANA] : ".
ACCEPT STOK.
IF STOK = "KAOS" OR "kaos" GO TO KAOS.
IF STOK = "CELANA" OR "celana" GO TO CELANA.
ELSE GO TO KOSONG.
KOSONG.
DISPLAY "Pilihan Anda Tidak Ada!".
GO TO MULAI.
KAOS.
DISPLAY ( , ) "Berapa Banyak Kaos : ".
ACCEPT PCS.
IF PCS = 3 GO TO D1.
ELSE GO TO K1.
CELANA.
DISPLAY ( , ) "Berapa Banyak Celana : ".
ACCEPT PCS.
IF PCS = 2 GO TO D2.
ELSE GO TO K2.
D1.
COMPUTE TOTAL = 50000 * PCS.
COMPUTE DISKON = TOTAL * 0.1.
COMPUTE HARGA = TOTAL - DISKON.
DISPLAY "Total Harganya Adalah Rp " HARGA.
DISPLAY ( , ) "Total Uang Yang Dibayarkan : ".
ACCEPT BAYAR.
COMPUTE KEMBALI = BAYAR - HARGA.
MOVE KEMBALI TO KEMBALIAN.
DISPLAY "Kembalian Anda Rp " KEMBALIAN.
DISPLAY "Selamat!!! Anda Mendapatkan Sebuah Tas".
GO TO SELESAI.
D2.
COMPUTE TOTAL = 100000 * PCS.
COMPUTE DISKON = TOTAL * 0.05.
COMPUTE HARGA = TOTAL - DISKON.
DISPLAY "Total Harganya Adalah Rp " HARGA.
DISPLAY ( , ) "Total Uang Yang Dibayarkan : ".
ACCEPT BAYAR.
COMPUTE KEMBALI = BAYAR - HARGA.
MOVE KEMBALI TO KEMBALIAN.
DISPLAY "Kembalian Anda Rp " KEMBALIAN.
DISPLAY "Selamat!!! Anda Mendapatkan Sebuah Sepatu".
GO TO SELESAI.
K1.
COMPUTE TOTAL = 50000 * PCS.
DISPLAY "Total Harganya Adalah Rp " TOTAL.
DISPLAY ( , ) "Total Uang Yang Dibayarkan : ".
ACCEPT BAYAR.
COMPUTE KEMBALI = BAYAR - TOTAL.
MOVE KEMBALI TO KEMBALIAN.
DISPLAY "Kembalian Anda Rp " KEMBALIAN.
GO TO SELESAI.
K2.
COMPUTE TOTAL = 100000 * PCS.
DISPLAY "Total Harganya Adalah Rp " TOTAL.
DISPLAY ( , ) "Total Uang Yang Dibayarkan : ".
ACCEPT BAYAR.
COMPUTE KEMBALI = BAYAR - TOTAL.
MOVE KEMBALI TO KEMBALIAN.
DISPLAY "Kembalian Anda Rp " KEMBALIAN.
GO TO SELESAI.
SELESAI.
STOP RUN.
Untuk mengawali
pembuatan program harus memulai menulis sintak pada kolom ke-8 ( 8 spasi).Identification
Division yang berfungsi untuk memberi identitas program, seperti
judul program, nama pembuat, dan lain-lain. Program-ID merupakan
penamaan judul program. Dalam hal ini judulnya adalah LA. Dalam program ini kita tidak menggunakan Environment Division namun
kita harus tetap menuliskan divisinya.
DATA DIVISION.
WORKING-STORAGE SECTION.
77 STOK PIC X(10).
77 PCS PIC 9.
77 TOTAL PIC 9(6).
77 HARGA PIC 9(6).
77 BAYAR PIC 9(10).
77 DISKON PIC 9(6).
77 KEMBALI PIC 9(10)
77 KEMBALIAN PIC 9(6).
Selanjutnya
mendeklarasikan variabel. Data division adalah tempat untuk
mendeklarasikan variabel di program cobol. Kemudian ada Working-Storage
Section yang merupakan bagian dari Data Division yang berfungsi
untuk mengidentifikasi variabel dalam program. Variabel yang dideklarasikan
sebagai berikut :
·
STOK
dengan picture clause X(10) yang artinya variabel STOK akan diisi dengan dengan data numeric alphapetic sebanyak 20 karakter.
·
PCS
dengan picture clause
9 yang artinya variabel PCS akan diisi dengan dengan data numeric sebanyak 1 karakter.
·
TOTAL
dengan picture clause 9(6) yang artinya variabel TOTAL akan diisi dengan dengan data numeric sebanyak
6 karakter.
·
HARGA dengan picture clause 9 yang artinya variabel tersebut akan diisi
dengan data numerik dengan maksimal 1 digit
·
BAYAR dengan picture clause 9(10)
yang artinya variabel tersebut akan diisi dengan data numerik dengan maksimal
10 digit
·
DISKON dengan picture clause 9(6)
yang artinya variabel tersebut akan
diisi dengan data numerik dengan maksimal 6 digit.
·
KEMBALI dengan picture clause 9(10) yang artinya variabel tersebut
akan diisi dengan data numerik dengan maksimal 10 digit
·
KEMBALIAN dengan picture clause 9(6) yang artinya variabel tersebut akan diisi
dengan data numerik dengan maksimal 6 digit.
MULAI.
DISPLAY ( , ) "Ingin Membeli
Apa [KAOS/CELANA] : ".
ACCEPT STOK.
IF STOK = "KAOS" GO TO
KAOS.
IF STOK = "CELANA" GO TO
CELANA.
ELSE GO TO KOSONG.
.
PROCEDURE DIVISION merupakan inti
dari program yang akan kita buat karena seluruh sintaks dari inputan sampai
dengan menghasilkan output terdapat dalam divisi ini. Pada program ini terdapat
dua prosedur yaitu prosedur MULAI
dan prosedur SELESAI.
Pada prosedur MULAI
kita disuruh untuk memilih menu yang
diinginkan. Misalkan kita pilih kaos maka akan dilempar ke program yang kita
yang berisi perhitungan dari penjualan kaos. Hasil inputan akan disimpan ke
dalam variabel STOK. Selanjutnya ada percabangan IF jika STOK sama dengan KAOS
maka akan menjalankan procedure KAOS. Jika STOK sama dengan CELANA maka akan
menjalankan procedure CELANA. Selain itu maka menjalankan procedure KOSONG.
KOSONG.
DISPLAY "Pilihan Anda Tidak
Ada!".
GO TO MULAI.
Selanjutnya procedure KOSOSNG, didalam procedure KOSONG
hanya mencetak “Pilihan Anda Tidak Ada”, lalu menjalankan procedure MULAI.
KAOS.
DISPLAY ( , ) "Berapa Banyak
Kaos : ".
ACCEPT PCS.
IF PCS = 3 GO TO D1.
ELSE GO TO K1.
Lalu ada procedure KAOS, didalamnya ada perintah DISPLAY
“Berapa Banyak Kaos : “ lalu hasil inputan akan disimpan kedalam variabel PCS.
Kemudian ada percabangan if dengan kondisi jika PCS sama dengan 3 maka akan
menjalankan procedure D1, selain itu akan menjalankan procedure K1.
CELANA.
DISPLAY ( , ) "Berapa Banyak
Celana : ".
ACCEPT PCS.
IF PCS = 2 GO TO D2.
ELSE GO TO K2.
Selanjutnya ada procedure CELANA, didalam procedure
CELANA sama dengan perocedure KAOS, pertama mencetak “Berapa Banyak Celana : “
kemudian hasil inputan akan disimpan ke dalam variabel PCS. Lalu ada percabangan
if dengan kondisi jika PCS =2 maka menjalankan procedure D2, jika tidak sama
dengan 2 maka akan menjalankan procedure K2.
D1.
COMPUTE TOTAL = 50000 * PCS.
COMPUTE DISKON = TOTAL * 0.1.
COMPUTE HARGA = TOTAL - DISKON.
DISPLAY "Total Harganya Adalah
Rp " HARGA.
DISPLAY ( , ) "Total Uang Yang
Dibayarkan : ".
ACCEPT BAYAR.
COMPUTE KEMBALI = BAYAR - HARGA.
MOVE KEMBALI TO KEMBALIAN.
DISPLAY "Kembalian Anda Rp
" KEMBALIAN.
DISPLAY "Selamat!!! Anda
Mendapatkan Sebuah Tas".
GO TO SELESAI.
Di dalam procedure D1 terdapat perhitungan menggunkan
COMPUTE, pertama mengkalikan 50000 dengan PCS dan disimpan ke dalam variabel
TOTAL.lalu mengkalikan variabel TOTAL dengan 0,1 dan disimpan kedalam variabel
DISKON. Selanjutnya ada pengurangan antara variabel TOTAL dengan DISKON dan
dimasukkan ke dalam variabel HARGA. Kemudian nilai dari variabel HARGA akan
dicetak setelah “Total Uang yang dibayarkan Rp “. Lalu ada inputan “Total
UangYang Dibayarkan : “ hasil inputan di simpan kedalam variabel BAYAR. Lalu menggunakan COMPUTE untuk menghitung
kembalian, kemudian variabel kembali dipindahkan nilainya kedalam variabel
KEMBALIAN. Kemudian ditampilkan ke layar.
D2.
COMPUTE TOTAL = 100000 * PCS.
COMPUTE DISKON = TOTAL * 0.05.
COMPUTE HARGA = TOTAL - DISKON.
DISPLAY "Total Harganya Adalah
Rp " HARGA.
DISPLAY ( , ) "Total Uang Yang
Dibayarkan : ".
ACCEPT BAYAR.
COMPUTE KEMBALI = BAYAR - HARGA.
MOVE KEMBALI TO KEMBALIAN.
DISPLAY "Kembalian Anda
Rp " KEMBALIAN.
DISPLAY "Selamat!!! Anda
Mendapatkan Sebuah Sepatu".
GO TO SELESAI.
Di dalam procedure D2
sama seperti D1, terdapat perhitungan menggunkan COMPUTE, pertama mengkalikan
100000 dengan PCS dan disimpan ke dalam variabel TOTAL.lalu mengkalikan
variabel TOTAL dengan 0,05 dan disimpan kedalam variabel DISKON. Selanjutnya
ada pengurangan antara variabel TOTAL dengan DISKON dan dimasukkan ke dalam
variabel HARGA. Kemudian nilai dari variabel HARGA akan dicetak setelah “Total
Uang yang dibayarkan Rp “. Lalu ada inputan “Total UangYang Dibayarkan : “
hasil inputan di simpan kedalam variabel BAYAR.
Lalu menggunakan COMPUTE untuk menghitung kembalian, kemudian variabel
kembali dipindahkan nilainya kedalam variabel KEMBALIAN. Kemudian ditampilkan
ke layar.
K1.
COMPUTE TOTAL = 50000 * PCS.
DISPLAY "Total Harganya Adalah
Rp " TOTAL.
DISPLAY ( , ) "Total Uang Yang
Dibayarkan : ".
ACCEPT BAYAR.
COMPUTE KEMBALI = BAYAR - TOTAL.
MOVE KEMBALI TO KEMBALIAN.
DISPLAY "Kembalian Anda Rp
" KEMBALIAN.
GO TO SELESAI.
Di dalam procedure K1 ada perintah
COMPUTE 50000 dikalikan dengan variabel PCS lalu disimpan kedalam variabel
TOTAL. Kemudian nilai dari variabel TOTAL ditampilkan ke layar, lalu mencetak “"Total
Uang Yang Dibayarkan :” hasil inputan akan disimpan kedalam variabel BAYAR.
Kemudian ada COMPUTE variabel BAYAR dikurangi variabel TOTAL hasilnya akan
disimpan kedalam variabel KEMBALI. Selanjutnya nilai dari variabel KEMBALI akan
di masukkan kedalam variabel KEMBALIAN lalu nilainya akan ditampilkan ke layar.
K2.
COMPUTE TOTAL = 100000 * PCS.
DISPLAY "Total Harganya Adalah
Rp " TOTAL.
DISPLAY ( , ) "Total Uang Yang
Dibayarkan : ".
ACCEPT BAYAR.
COMPUTE KEMBALI = BAYAR - TOTAL.
MOVE KEMBALI TO KEMBALIAN.
DISPLAY "Kembalian Anda Rp
" KEMBALIAN.
GO TO SELESAI.
SELESAI.
STOP RUN.
Di dalam procedure K2 sama seperti K1, ada perintah COMPUTE
100000 dikalikan dengan variabel PCS lalu disimpan kedalam variabel TOTAL.
Kemudian nilai dari variabel TOTAL ditampilkan ke layar, lalu mencetak “"Total
Uang Yang Dibayarkan :” hasil inputan akan disimpan kedalam variabel BAYAR.
Kemudian ada COMPUTE variabel BAYAR dikurangi variabel TOTAL hasilnya akan
disimpan kedalam variabel KEMBALI. Selanjutnya nilai dari variabel KEMBALI akan
di masukkan kedalam variabel KEMBALIAN lalu nilainya akan ditampilkan ke layar.
Kemudian
ada procedure SELESAI. Dan didalamnya ada printah STOP RUN untuk keluar dari program.