Rabu, 09 November 2011

cobol : Menu

Posted by Maulana Syarif HIidayatulloh in - 0 komentar


<<<INI ADALAH CODING DARI COBOL>>

       IDENTIFICATION DIVISION.
       PROGRAM-ID. BIODATA.
       AUTHOR. MAULANA_SH.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SOURCE-COMPUTER. TOSHIBA.
       OBJECT-COMPUTER. THOSHIBA.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01 BIODATA.
           02 NAMA1 PIC A(16).
           02 NPM1 PIC 9(8).
           02 KELAS1 PIC X(5).
       01 EDIT.
           02 NAMA2 PIC A(4).
           02 NPM2 PIC Z(3).
           02 KELAS2 PIC X(3)/X(5).
       01 MASUKAN.
           02 NILAI1 PIC 99.
           02 NILAI2 PIC 99.
           02 NILAI-TAMPIL PIC 99.
       01 JAWAB PIC X VALUE SPACE.
           88 LAGI VALUE "Y", "y".
           88 TIDAK VALUE "T", "t".
       77 PIL PIC X.
       SCREEN SECTION.
       01 HAPUS-LAYAR.
           02 BLANK SCREEN.
       01 MENU.
           02 LINE 2 COLUMN 28 VALUE '>>>MENU<<<', FOREGROUND-COLOR 3.
           02 LINE 3 COLUMN 23 VALUE '[1]. MASUKKAN DATA',
           FOREGROUND-COLOR 3.
           02 LINE 4 COLUMN 23 VALUE '[2]. LIHAT HASIL',
           FOREGROUND-COLOR 3.
           02 LINE 5 COLUMN 23 VALUE '[3]. ARITMATIKA',
           FOREGROUND-COLOR 3.
           02 LINE 6 COLUMN 23 VALUE '[4]. PEMBUAT', FOREGROUND-COLOR 3.
           02 LINE 7 COLUMN 23 VALUE 'SILAKAN MASUKKAN PILIHAN ANDA',
           FOREGROUND-COLOR 3.
           02 COLUMN PLUS 2 PIC X TO PIL, FOREGROUND-COLOR 3.
       01 INPUT-DATA.
           02 LINE 3 COLUMN 10 VALUE '>>>MASUKAN DATA<<<'.
           02 LINE 4 COLUMN 6 VALUE 'NAMA  : '.
           02 COLUMN PLUS 2 PIC A(16) TO NAMA1.
           02 LINE 5 COLUMN 6 VALUE 'NPM   : '.
           02 COLUMN PLUS 2 PIC 9(8) TO NPM1.
           02 LINE 6 COLUMN 6 VALUE 'KELAS : '.
           02 COLUMN PLUS 2 PIC X(5) TO KELAS1.
       01 IP.
           02 LINE 4 COLUMN 28 VALUE '>>MASUKAN NILAI<<'.
           02 LINE 5 COLUMN 26 VALUE '====================='.
           02 LINE 6 COLUMN 30 VALUE 'NILAI A ='.
           02 COLUMN PLUS 2 PIC 99 TO NILAI1.
           02 LINE 7 COLUMN 30 VALUE 'NILAI B ='.
           02 COLUMN PLUS 2 PIC 99 TO NILAI2.
           02 LINE 8 COLUMN 26 VALUE '====================='.
      
       01 LAYAR-TAMPIL.
           02 LINE 9 COLUMN 30 VALUE 'HASIL   ='.
           02 COLUMN PLUS 2 PIC 99 FROM NILAI-TAMPIL.
       01 LULUS.
           02 LINE 13 COLUMN 32 VALUE 'ANDA LULUS'.
       01 TIDAK-LULUS.
           02 LINE 13 COLUMN 29 VALUE 'ANDA TIDAK LULUS'.
       01 FINISH.
           02 LINE 7 COLUMN 33 'TERIMA KASIH..!!',
           FOREGROUND-COLOR 3.
           02 LINE 8 COLUMN 17,
           'PROGRAM INI DIBUAT OLEH: MAULANA SYARIF HIDAYATULLOH',
           FOREGROUND-COLOR 3.
       PROCEDURE DIVISION.
       MULAI.
           DISPLAY HAPUS-LAYAR.
           DISPLAY MENU.
           ACCEPT MENU.
       SELEKSI.
           IF PIL=1
           PERFORM HASIL
           PERFORM TANYA.
           IF PIL=2
           PERFORM HASIL1
           PERFORM DATAKU
           PERFORM HASIL2.
           IF PIL=3
           PERFORM LAYAR-KELUAR
           PERFORM SELEKSI2
           PERFORM TANYA.
           IF PIL=4
           PERFORM SUDAH
           ELSE GO TO
           SELESAI.
       SELESAI.
           STOP RUN.
       TANYA.
           DISPLAY SPACE.
           DISPLAY SPACE.
           DISPLAY 'APAKAH ANDA INGIN MEMASUKKAN DATA BARU [Y/T] :'.
           ACCEPT JAWAB.
           IF LAGI GO TO HASIL.
           IF TIDAK GO TO MULAI
           ELSE GO TO SUDAH.
       HASIL.
           DISPLAY HAPUS-LAYAR.
           DISPLAY INPUT-DATA.
           ACCEPT INPUT-DATA.
           GO TO TANYA.
       HASIL1.
           DISPLAY HAPUS-LAYAR.
           DISPLAY INPUT-DATA.
           ACCEPT INPUT-DATA.
       DATAKU.
           MOVE NAMA1 TO NAMA2.
           MOVE NPM1 TO NPM2.
           MOVE KELAS1 TO KELAS2.
       HASIL2.
           DISPLAY HAPUS-LAYAR.
           DISPLAY '    ***PERUBAHAN***'.
           DISPLAY NAMA1  '  MENJADI  ' NAMA2.
           DISPLAY NPM1 '  MENJADI  ' NPM2.
           DISPLAY KELAS1 '  MENJADI  ' KELAS2.
           GO TO TANYA.
       LAYAR-KELUAR.
           DISPLAY HAPUS-LAYAR.
           DISPLAY IP.
           ACCEPT IP.
           COMPUTE NILAI-TAMPIL=(NILAI1 + NILAI2)/2.
           DISPLAY LAYAR-TAMPIL.
           DISPLAY SPACE.
           DISPLAY SPACE.
       SELEKSI2.
           IF NILAI-TAMPIL =60
           DISPLAY LULUS.
           IF NILAI-TAMPIL >60
           DISPLAY LULUS
           ELSE
           DISPLAY TIDAK-LULUS.   
       SUDAH.
           DISPLAY HAPUS-LAYAR.
           DISPLAY FINISH.




KETERANGAN :
SYARAT PROGRAM COBOL ADA 4 DIVISI.
1.       IDENTIFICATION DIVISION.
DISINI BERISI TENTANG JUDUL PROGRAM  YAITU PROGRAM –ID DAN PEMBUAT PROGRAM YAITU AUTHOR.
2.         ENVIRONMENT DIVISION.
PADA PROGRAM DI ATAS ENVIRONMENT DIVISION TERDAPAT 1 SECTION YANG BERISI TENTANG KOMPONEN-KOMPONEN YANG DI PAKAI.
3.         DATA DIVISION.
ADA DUA SECTION DI DALAMNYA CODINGAN DI ATAS,YAITU: 
+ WORKING-STORAGE SECTION.
                UNTUK MENDEKLARASIKAN VARIABLE DAN TIPE DATA YANG DI GUNAKAN.
CONTOH.
01 BIODATA .                                  ADALAH RECORD.
02 NAMA1 PIC A(16).                     :     ADALAH KETERANGAN ATAU ISI DARI RECORD 
                                                                DENGAN MEMAKAI PICTURE CLAUSE A DI BATASI 
                                                                SAMPAI 16 KARAKTER.
+ SCREEN SECTION.
                ADALAH PROSES UNTUK FORMAT TAMPILAN PADA PROGRAM INI BAIK INPUT MAUPUN OUTPUT.
CONTOH.
01 HAPUS-LAYAR.                            :     LEVEL-NUMBER NAMA LAYAR..
02 BLANK SCREEN.                          :    UNTUK MENGHAPUS LAYAR ATAU CLEAR SCREEN.
01 MENU.                                            : NAMA LAYAR.
02 LINE 2 COLUMN 28 VALUE ‘>>>MENU<<<’, FOREGROUND-COLOR 3. 
 : BARIS 2 KOLOM 3 AKAN MENCETAK OUTPUT  >>>MENU<<< DENGAN NOMOR COLOR
   YG KETIGA. AKAN MENCETAK APA YG ADA DI DALAM TANDA PETIK.
01 INPUT-DATA                                  :NAMA LAYAR.
02 LINE 4 COLUMN 6 VALUE ‘NAMA :’.
02 COLUMN PLUS 2 PIC A(16)  TO NAMA1.
:BARIS 4 KOLOM 6 AKAN MENCETAK NAMA :
: AKAN MENGINPUT PLUS 2 KOLOM DARI NAMA1  DENGAN ALPHABET SEBANYAK 16
 KARAKTER.

4.       PROCEDURE DIVISION.
BERISI TENTANG SEMUA STATEMENT INTRUKSI DI BUAT.
CONTOH:
MULAI                                                    : ADALAH NAMA INTRUKSI.
DISPLAY HAPUS-LAYAR                    : UNTUK SCREEN ATAU MEMBERSIHKAN
                                                                   LAYAR.
DISPLAY MENU                                    : UNTUK MENJALANKAN RECORD MENU.
ACCEPT MENU                                     : UNTUK MENERIMA INPUTAN KETERANGAN
                                                                  RECORD TERSEBUT
SELEKSI.                                                : ADALAH NAMA INTRUKSI.
IF PIL=1                                                  : JIKA PILHAN SAMA DENGAN 1
PERFORM HASIL                                  :KE INTRUKSI HASIL
PERFROM TANYA.                               :KE INTRUKSI TANYA.
IF PIL=2                                                  :JIKA PILIHAN SAMA DENGAN 2
PERFORM HASIL1                                :KE INTRUKSI HASIL1
PERFORM DATAKU                             :KE INTUKSI DATAKU
PERFORM HASIL2                                :KE INTRUKSI HASIL2.
IF PIL=3                                                  :JIKA PILHAN SAMA DENGAN 3
PERFORM LAYAR-KELUAR                :KE INTRUKSI LAYAR-KELUAR
PERFORM SELEKSI2                            :KE INTRUKSI SELEKSI2
PERFORM TANYA                                :KE INTRUKSI TANYA
SELESAI                                                 :ADALAH NAMA INTRUKSI.
STOP RUN.                                            :ISI DARI INTRUKSI SELESAI YANG BERFUNGSI 
                                                                 MENGAKHIRI PROGRAM.
TANYA.                                                  :ADALAH NAMA INTRUKSI.
DISPLAY SPACE                                   :UNTUK MENG-ENTER 1X KE BAWAH.

DISPLAY ‘APAKAH ANDA INGIN MEMASUKAN DATA BARU [Y/T]’.
ACCEPT JAWAB
IF LAGI GO TO HASIL.
IF TIDAK GO TO MULAI
ELSE GO TO SUDAH.
PENGERTIANNYA
JIKA INPUTAN  ‘Y’ MAKA LOMPAT KE INTRUKSI HASIL.
JIKA ‘T’ MAKA LOMPAT KE INTRUKSI MULAI
SELAIN ITU KE INTRUKSI SUDAH.
HASIL                                                              :NAMA INTRUKSI.
DISPLAY INPUT-DATA                                :UNTUK MENJALANKAN RECORD INPUT-DATA.
ACCEPT INPUT-DATA                                 :UNTUK MENERIMA INPUTAN KETERANGAN
                                                                          RECORD TERSEBUT
GO TO TANYA                                               :KE INTRUKSI TANYA.
HASIL1.                                                           : NAMA INTRUKSI
DISPLAY INPUT-DATA                                :UNTUK MENJALANKAN RECORD INPUT-DATA.
ACCEPT INPUT-DATA                                 :UNTUK MENERIMA INPUTAN KETERANGAN
                                                                         RECORD TERSEBUT
DATAKU.                                                        :NAMA INTRUKSI.
MOVE NAMA1 TO NAMA2.                        :MENGUBAH OUTPUT NAMA1 MENJADI NAMA2.
MOVE NPM1 TO NPM2.                               :MENGUBAH OUTPUT NPM1 MENJADI NPM2.
MOVE KELAS1 TO KELAS2.                       :MENGUBAH OUTPUT KELAS1 MENJADI KELAS2.
HASIL2                                                            : ADALAH NAMA INTRUKSI.
DISPLAY HAPUS-LAYAR                             : UNTUK SCREEN ATAU MEMBERSIHKAN LAYAR.
DISPLAY ‘***PERUBAHAN***’.                 : UNTUK MENCETAK ‘***PERUBAHAN***’.
DISPLAY NAMA1 ‘MENJADI’ NAMA2.     : MENCETAK OUPTUT NAMA1 “MENJADI” OUTPUT NAMA2.
DISPLAY NPM1 ‘MENJADI’ NPM2.            : MENCETAK OUPTUT NPM1 “MENJADI” OUTPUT NPM2.
DISPLAY KELAS1 ‘MENJADI’ KELAS2.    : MENCETAK OUPTUT KELAS1 “MENJADI” OUTPUT KELAS2.
LAYAR-KELUAR.                                   : ADALAH NAMA INTRUKSI.
DISPLAY HAPUS-LAYAR                      : UNTUK SCREEN ATAU MEMBERSIHKAN
                                                                    LAYAR.
DISPLAY IP.                                            : UNTUK MENJALANKAN RECORD IP.
ACCEPT IP.                                             : UNTUK MENERIMA INPUTAN KETERANGAN
                                                                   RECORD TERSEBUT
COMPUTE NILAI-TAMPIL=(NILAI1 +NILAI2)/2.
COMPUTE ADALAH STATEMEN UNTUK PENGHITUNGAN.
KETERANGAN RECORD NILAI-TAMPIL=(KET.REC. NILA1 + KET.REC. NILA2)/2.
DISPLAY LAYAR-TAMPIL                     : MENCETAK NAMA-LAYAR TERSEBUT.
SELEKSI2.                                                : NAMA INTRUKSI.
IF NILAI –TAMPIL =60
DISPLAY LULUS.
IF NILAI-TAMPIL >60
DISPLAY LULUS
ELSE DISPLAY TIDAK-LULUS.
JIKA HASIL  NILAI-TAMPIL SAMA DENGAN 60 CETAK  RECORD LULUS
JIKA HASIL  NILAI-TAMPIL LEBIH DARI 60 CETAK RECORD LULUS.
SELAIN ITU CETAK RECORD TIDAK-LULUS.
SUDAH.                                                    : NAMA INTRUKSI.
DISPLAY HAPUS-LAYAR                      : UNTUK SCREEN ATAU MEMBERSIHKAN LAYAR.
DISPLAY  FINISH.                                   : UNTUK MENCETAK RECORD FINISH.

Sabtu, 05 November 2011

COBOL : IF DAN COMPUTE

Posted by Maulana Syarif HIidayatulloh in - 0 komentar


         IDENTIFICATION DIVISION.
       PROGRAM-ID. TUGAS.
       AUTHOR. COWO.
       ENVIRONMENT DIVISION.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01 MASUKAN.
           02 NILAI1 PIC 99.
           02 NILAI2 PIC 99.
           02 HASIL PIC 99.
       SCREEN SECTION.
       01 HAPUS-LAYAR.
           02 BLANK SCREEN.
       01 INPUT-DATA.
           02 LINE 4 COLUMN 28 VALUE '>>MASUKAN NILAI<<'.
           02 LINE 5 COLUMN 26 VALUE '====================='.
           02 LINE 6 COLUMN 30 VALUE 'NILAI A ='.
           02 COLUMN PLUS 2 PIC 99 TO NILAI1.
           02 LINE 7 COLUMN 30 VALUE 'NILAI B ='.
           02 COLUMN PLUS 2 PIC 99 TO NILAI2.
           02 LINE 8 COLUMN 26 VALUE '====================='.
       01 LAYAR-TAMPIL.
           02 LINE 9 COLUMN 30 VALUE 'HASIL   ='.
           02 COLUMN PLUS 2 PIC 99 FROM HASIL.
       01 LULUS.
           02 LINE 13 COLUMN 32 VALUE 'ANDA LULUS'.
       01 TIDAK-LULUS.
           02 LINE 13 COLUMN 29 VALUE 'ANDA TIDAK LULUS'.
       PROCEDURE DIVISION.
       MULAI.
           DISPLAY HAPUS-LAYAR.
           DISPLAY INPUT-DATA.
           ACCEPT INPUT-DATA.
           COMPUTE HASIL=(NILAI1 + NILAI2)/2.
           DISPLAY LAYAR-TAMPIL.
       SELEKSI.
           IF HASIL =60
           DISPLAY LULUS.
           ACCEPT LULUS.
           IF HASIL >60
           DISPLAY LULUS.
           ACCEPT LULUS.
           IF HASIL <59
           DISPLAY TIDAK-LULUS.
           ACCEPT TIDAK-LULUS.
       SELESAI.
           STOP RUN.     





Keteranagan:
SYARAT PROGRAM COBOL ADA 4 DIVISI.
1.       IDENTIFICATION DIVISION.
DISINI BERISI TENTANG JUDUL PROGRAM  YAITU PROGRAM –ID DAN PEMBUAT PROGRAM YAITU AUTHOR.
2.         ENVIRONMENT DIVISION.
PADA PROGRAM DI ATAS ENVIRONMENT DIVISION TERDAPAT 1 SECTION YANG BERISI TENTANG KOMPONEN-KOMPONEN YANG DI PAKAI.
3.    DATA DIVISION.
       ADA DUA SECTION DI DALAMNYA CODINGAN DI ATAS,YAITU:
+ WORKING-STORAGE SECTION.
           UNTUK MENDEKLARASIKAN VARIABLE DAN TIPE DATA YANG DI GUNAKAN.
CONTOH:
01 MASUKAN.                  : ADALAH RECORD.
02 NILAI1 PIC 9.               : ADALAH KET. DARI RECORD YANG BERTIPE NUMERIC.
+ SCREEN SECTION.
              ADALAH PROSES UNTUK FORMAT TAMPILAN PADA PROGRAM INI BAIK INPUT MAUPUN   OUTPUT.
CONTOH  : 
01 HAPUS-LAYAR.            :ADALAH  LEVEL NUMBER NAMA LAYAR.
02 BLANK SCREEN.           : PERINTAH UNTUK MENGHAPUS LAYAR.
4.   PROCEDURE DIVISION.
BERISI TENTANG SEMUA STATEMENT INTRUKSI DI BUAT.
CONTOH :
MULAI.                                     : ADALAH NAMA INTRUKSI.
DISPLAY HAPUS-LAYAR      : UNTUK SCREEN ATAU MEMBERSIHKAN LAYAR.
DISPLAY INPUT-DATA.         :UNTUK MENJALANKAN RECORD INPUT-DATA.
ACCEPT INPUT-DATA.           :UNTUK MENERIMA INPUTAN KETERANGAN RECORD 
                                                     TERSEBUT
COMPUTE HASIL=(NILAI1 +NILAI2)/2.
COMPUTE ADALAH STATEMEN UNTUK PENGHITUNGAN.
KETERANGAN RECORD HASIL = (KET.REC. NILA1 + KET.REC. NILA2)/2.
DISPLAY LAYAR-TAMPIL      :MENCETAK NAMA-LAYAR TERSEBUT.
SELEKSI.                                    :NAMA INTRUKSI.
IF HASIL =60
DISPLAY LULUS.
ACCEPT LULUS.
IF HASIL >60
DISPLAY LULUS
ACCEPT ULUS.
IF HASIL <59
DISPLAY TIDAK-LULUS.
ACCEPT TIDAK-LULUS.
JIKA HASIL  SAMA DENGAN 60 CETAK  RECORD LULUS
JIKA HASIL   LEBIH DARI 60 CETAK RECORD LULUS.
JIKA HASIL KURANG DARI 59 CETAK RECORD TIDAK-LULUS.
SELESAI.                : NAMA INTRUKSI.
STOP RUN.            : MENGAKHIRI PROGRAM.


Senin, 31 Oktober 2011

Keluarga di Luar keluarga

Posted by Maulana Syarif HIidayatulloh in - 0 komentar


               Maksut dari kata keluarga di luar keluarga adalah sahabat atau teman. Sahabat atau teman menurut saya adalah keluarga di luar keluarga. Kenapa saya berkata demikian??..  .Menurut saya sebagian remaja jika terkena masalah pasti akan cerita kepada sahabat atau teman-temannya terlebih dahulu. Apa lagi masalah negatif yang biasanya orang tua akan marah, contoh kasus-kasus di sekolah ,nilai jelek,bertengkar dengan anak yang lain,merokok,bolos ketahuan guru,itu adalah contoh masalah negatif,dan sahabat atau teman lah yang kita ceritakan terlebih dulu. Tanpa keluarga di luar keluarga seseorang akan ansos,karena tidak bisa membaur dengan yang lain.
                Keluarga di luar keluarga sangat penting,karena jika terkena masalah kehadiran sabahat atau teman menjadi peran penting dan bisa meminta bantuan. Banyak sekali keluarga sendiri tidak tahu apa yang si anak rasakan,masalah keluarga,masalah sekolah,masalah pribadi semua bercampur,dan kebanyakan keluarga tidak tahu menau apa yang di rasakan anak. Dari sini lah kita mencari keluarga di luar keluarga. Sangat bagus jika mendapat teman-teman dan sahabat yang baik dan tidak menjerumuskan.
                Saya sangat merasakan mempunyai kawan-kawan yang solid,selalu ada jika saya kesusahan. Mereka semua anak nakal,brandal,masa bodoan. Tetapi tidak satupun yang menjerumuskan,semua solid jika salah satu ada yang terkena masalah,solidaritaslah yang bisa membangun pertemanan yang kokoh,yang bisa menjadi keluarga di luar keluarga. Pentingnya solidaritas terhadap pertemanan sangat mempunyai peran,karena dari situ kita dapat tau arti dari sebuah pertemanan dan persahabatan.

IBUKOTA DENGAN ANAK JALANANNYA

Posted by Maulana Syarif HIidayatulloh in - 0 komentar


DKI Jakarta adalah Ibukota Indonesia,dan sangat identik dengan kemacetannya. Cermin dari kata Ibukota pun hilang melihat sebagian warganya hidup di bawah garis kemiskinan. Banyak sekali anggota keluarga di DKI jakarta,dan banyak juga yang terlantar,dan anak – anak mereka pun banyak yang putus sekolah karena tidak mampu mendapatkan biaya,sementara untuk sekolah dana menimba ilmu biaya sangat lah di perlukan dan putus sekolah karena faktor diri sendiri yang malas.
            Hidup di jalanan adalah jalan mereka untuk mencari sesuap makanan,dan karena tak ada perhatian dari orang tua juga faktor mereka hidup di jalan.  Hampir di sebagiandan pelosok sang Ibukota banyak sekali anak jalanan. Hidup mereka pun sangat tidak mudah dengan apa yang saya rasakan. Demi memenuhi keinginan makan dan lain – lain mereka harus mengemis dan mengamen dr tempat ke tempat dari bus ke bus. Di samping itu pun para petugas mengejar – ngejar mereka,sampai mereka lari kesana kemari dan membela diri sekuat tenaga.
Banyak anak jalanan yang mengamen dan minta –minta bukan karena keinginan diri sendiri. Ada orang yag memaksa mereka untuk melakukan hal tersebut dan menargetkan berapa banya mata uang yang terkumpul dan di dapat untuk kepentingan pribadi dan sangat menekankan agar target tercapai. Jika tidak banyak yang di siksa,di caci maki,dan di lakukan bukan seperti manusia. Dengan enak memakan hasil keringat dan jeripayah para anak jalanan.
Hari demi hari mereka melewati profesi ini dengan raut wajah yang harusnya di jaman ini tak ada. Yang berwenang dan para petinggi negaraa mesti sadar mereka butuh perhatian,jangan setelah di atas lupa dengan yang bawah,jika tak ada bawah atas tak akan jadi. Jalankan visi dan misi yaang di janjikan,harus terbukti. Mereka di pilih bukan karena sesuatu,akan tetapi untuk menangani masalah – maslah di negara ini,dan salah satunya kasus ini. Karena nasib mereka harus di pedulikan. 

Blogroll

Partners

About