Kamis, 18 Oktober 2012

Coding COBOL (Menu)


       identification division.
       program-id. Menu.
       author. Hendra.
       environment division.
       data division.
       working-storage section.
       77 prd pic A(20).
       01 data-masukan.
           02 nama pic A(20).
           02 gaji.
             03 gaji-pokok pic 9(8).
             03 tunjangan pic 9(8).
             03 total-gaji pic z(8).
       01 data-inputan.
           02 nama2 pic X(10).
           02 npm pic X(10).
           02 kelas pic X(5).
           02 nilai2.
             03 UTS pic 9(3).
             03 UAS pic 9(3).
             03 nilai-hasil pic z(3).99.
       01 pil pic A.          
           88 gaji1 value is '1'.
           88 kampus2 value is '2'.
           88 nilai3 value is '3'.
           88 keluar4 value is '4'.
       01 tanya pic A.
           88 lagi value is 'Y', 'y'.
           88 tidak value is 'T', 't'.
       01 jawab2 pic A.
           88 jawaba value is 'D', 'd'.
           88 jawabb value is 'E', 'e'.
           88 jawabc value is 'F', 'f'.
           88 jawabd value is 'G', 'g'.
           88 jawabe value is 'L', 'l'.
       01 tanya2 pic A.
           88 lagi2 value is 'Y', 'y'.
           88 tidak2 value is 'T', 't'.
       01 tanya3 pic A.
           88 lagi3 value is 'Y', 'y'.
           88 tidak3 value is 'T', 't'.
       screen section.
       01 hapus-layar.
           02 blank screen.
       procedure division.
       mulai.
        masukkan-data.
           display hapus-layar.
           display '******MENU******'.
           display '*1.Hitung Gaji *'.
           display '*2.Pilih Kampus*'.
           display '*3.Hitung Nilai*'.
           display '*4.EXIT        *'.
        tanyakan.
           display space.
           display 'Pilih Menu'.
           accept pil.
           if gaji1 go to hitung-gaji.
           if kampus2 go to kampus.
           if nilai3 go to nilai.
           if keluar4 go to selesai.
        hitung-gaji.
           display hapus-layar.
           display 'Nama Anda          : '.
           accept nama.
           display 'Gaji Pokok         :Rp. '.
           accept gaji-pokok.
           display 'Besarnya Tunjangan :Rp. '.
           accept tunjangan.
        total.
           compute total-gaji = gaji-pokok + tunjangan.
        cetak-hasil.
           display hapus-layar.
           display '*****Gaji Anda Untuk Bulan Ini*******'.
           display ' '.
           display 'Nama               :', nama.
           display 'Gaji Pokok         :Rp.', gaji-pokok.
           display 'Besarnya Tunjangan :Rp.', tunjangan.
           display 'Total Gaji         :Rp.', total-gaji.
        tanyakan1.
           display space.
           display 'Ingin Menghitung Gaji Yang Lain (Y/T) ?'.
           accept tanya.
           if lagi go to hitung-gaji.
           if tidak go to masukkan-data.
        kampus.
           display hapus-layar.
           display 'Masukkan Jawaban Berupa Huruf (D/E/F/G/L) ?'.
           accept jawab2.
           if jawaba go to Kode-D.
           if jawabb go to Kode-E.
           if jawabc go to Kode-F.
           if jawabd go to Kode-G.
           if jawabe go to Kode-L.
        Kode-D.
           display 'Kampus Depok'
           go to tanyakan2..
        Kode-E.
           display 'Kampus Kelapa Dua'.
           go to tanyakan2.
        Kode-F.
           display 'Kampus Cikini'.
           go to tanyakan2.
        Kode-G.
           display 'ILAB'.
           go to tanyakan2.
        Kode-L.
           display 'Kampus Cengkareng'.
           go to tanyakan2.
        tanyakan2.
           display space.
           display 'Ingin Ke Kampus Yang Lain(Y/T)?'.
           accept tanya2.
           if lagi2 go to kampus.
           if tidak2 go to masukkan-data.
        nilai.
           display hapus-layar.
           display 'Masukkan Nama     :'.
           accept nama2.
           display 'Masukkan NPM      :'.
           accept npm.
           display 'Masukkan Kelas    :'.
           accept kelas.
           display 'Masukkan Nilai UTS:'.
           accept UTS.
           display 'Masukkan Nilai UAS:'.
           accept UAS.
        jum-nilai.
           compute nilai-hasil =(0.7 * uts + 0.3 * uas) * 10.
        predikat-nilai.
           if nilai-hasil < 40
           move 'E' to prd
           else
           if nilai-hasil > 40 and nilai-hasil < 60
           move 'D' to prd
           else
           if nilai-hasil > 60 and nilai-hasil < 75
           move 'C' to prd
           else
           if nilai-hasil > 75 and nilai-hasil < 85
           move 'B' to prd
           else
           if nilai-hasil > 85
           move 'A' to prd.
        Hasil-Akhir.
           display hapus-layar.
           display '=========================='.
           display 'Nama        :', nama2.
           display 'NPM         :', npm.
           display 'Kelas       :', kelas.
           display 'UTS         :', UTS.
           display 'UAS         :', UAS.
           display 'Nilai Akhir :', nilai-hasil.
           display 'Predikat    :', prd.
        tanyakan3.
           display space.
           display 'Ingin Menghitung Lagi (Y/T)?'.
           accept tanya3.
           if lagi3 go to nilai.
           if tidak3 go to masukkan-data.
        selesai.
           stop run.

Tidak ada komentar:

Posting Komentar