Manfaat Belajar bahasa pemograman pascal




 Bahasa Pascal adalah bahasa pemrograman tingkat tinggi (high level language) yang cukup populer, khususnya di Indonesia. Hal ini disebabkan bahasa Pascal lebih mudah dipahami dibanding bahasa pemrograman lainnya, seperti bahasa C, bahasa assembler, dan lain sebagainya. Selain itu, bahasa Pascal adalah bahasa pemrograman yang terstruktur dan lebih mendekati bahasa manusia (bahasa Inggris) sehingga sangat cocok diterapkan dalam dunia pendidikan.
Bahasa Pascal berorientasi data, programmer diberi kemampuan untuk mendefenisikan tipe data sendiri. Dengan kebebasan ini pengecekan tipe data dilakukan secara ketat, yang menjamin bahwa tipe data yang didefenisikan tidak membingungkan. Pascal ditujukan sebagai bahasa pembelajaran, dan telah diterima secara luas. Pascal menggunakan bahasa Inggris sebagai penulisan kodenya, sehingga penulisannya dan pengemb
Berikut ini akan diberikan gambaran mengapa mesti belajar bahasa pascal.
1. Kecepatan (speed)
Kecepatan bahasa pascal untuk mengkompilasi baris program dapat dikatakan sekejap mata saja. Anda banyangkan kode baris program yang ribuan jumlahnya diterjemahkan dalam hitungan detik. Coba anda buktikan dengan bahasa pemrograman lainnya (C, C++, Java, dll)
2. Tipe data yang kuat
Pascal mengijinkan pemakainya untuk membuat tipe data sendiri, tetapi dengan beberapa batasan. Pascal tidak mengenal pengubahan tipe data (type casting) dan hal ini tentu saja memberi manfaat karena kemungkinan timbulnya kesalahan (error) kecil. Hal ini merupakan salah satu alasan utama yang dilakukan panitia ujian masuk mahasiswa untuk mata ujian komputer di Amerika.
3. Ukuran
Hasil compilasi dari program pascal hanya beberapa kilo byte saja. Sungguh kecil. Bila kita bandingkan dengan kapasitas ruang hard disk yang 40 mega byte, dapat dibanyangkan berapa besar program pascal yang dapat kita buat.
4. Portabilitas
Portabilitas berarti program pascal dapat berjalan pada jenis komputer yang berbeda, seperti : IBM, Apple, dll.
5. Produktivitas
Untuk belajar suatu bahasa pemrograman pada dasarnya sama, yaitu : harus mengenal aturan dan struktur data dari bahasa tersebut. Anda dapat bayangkan kalau tukang bangun tidak memiliki arsitektur yang jelas tentang bangunan rumah tersebut, tentu saja rumah yang akan dibangun tidak akan baik. Pascal menyediakan struktur data yang jelas, dengan demikian produktivitas hasil kerja kita tentu saja akan bertambah.
Dan satu hal yang jelas bahasa turbo pascal for windows atau visual delphi adalah turunan dari turbo pascal. Dan bila struktur dari program pascal sudah kita pahami, maka untuk memahami pascal for windows ataup visual Delphi tidaklah sulit lagi. Orang bijak bilang ‘belajar dari dasar merupakan modal yang paling besar’. Untuk itulah Pascal hadir bagi kita.

Program Menghitung Gaji Menggunakan Procedure



program gaji_pegawai;
uses wincrt;
var
   nm,jab,sts,tmplhr:string;
   gaji,tunjank,gatot,anak,tunjkwn,nip:real;
   d,m,y:integer;
procedure dir;
begin
     write  ('Status Perkawinan    (N/B] : '); readln(sts);
     if sts = 'N' then
        begin
             write  ('Masukkan Jumlah Anak       : '); readln(anak);    
             gaji:=2000000;
             if anak>=3 then
                 tunjank:=3*(0.1*gaji)
             else
                 tunjank:=anak*(0.1*gaji);
             tunjkwn:=gaji*0.03;
             gatot:=gaji+tunjank+tunjkwn;
             writeln('Gaji Pokok                 : ',gaji:0:0);
             writeln('Tunjangan Nikah            : ',tunjkwn:0:0);
             writeln('Tunjangan Anak             : ',tunjank:0:0);
             writeln('Gaji Total                 : ',gatot:0:0);
        end
     else
     if sts = 'B' then
         begin
             gaji:=2000000;
             writeln('Gaji Total                 : ',gaji:0:0);
         end
     else
         writeln('Kode yang Anda Masukkan salah! Gunakan huruf kapital');
end;
procedure mgr;
begin
     write  ('Status Perkawinan    (N/B) : '); readln(sts);
     if sts = 'N' then
        begin
             write  ('Masukkan Jumlah Anak       : '); readln(anak);
    
             gaji:=1500000;

             if anak>=3 then
                 tunjank:=3*(0.1*gaji)
             else
                 tunjank:=anak*(0.1*gaji);
             tunjkwn:=gaji*0.03;
             gatot:=gaji+tunjkwn+tunjank;
             writeln('Gaji Pokok                 : ',gaji:0:0);
             writeln('Tunjangan Jabatan          : ',tunjkwn:0:0);
             writeln('Tunjangan Anak             : ',tunjank:0:0);
             writeln('Gaji Total                 : ',gatot:0:0);
        end
     else
     if sts = 'B' then
         begin
             gaji:=1500000;           
             writeln('Gaji Total                 : ',gaji:0:0);
         end
     else
         writeln('Kode yang Anda Masukkan salah! Gunakan huruf kapital');
end;
procedure spv;
begin
     write  ('Status Perkawinan    (N/B) : '); readln(sts);
     if sts = 'N' then
        begin
             write  ('Masukkan Jumlah Anak       : '); readln(anak);
             gaji:=1000000;
             if anak>=3 then
                 tunjank:=3*(0.1*gaji)
             else
                 tunjank:=anak*(0.1*gaji);
             tunjkwn:=gaji*0.03;
             gatot:=gaji+tunjkwn+tunjank;
             writeln('Gaji Pokok                 : ',gaji:0:0);
             writeln('Tunjangan Nikah            : ',tunjkwn:0:0);
             writeln('Tunjangan Anak             : ',tunjank:0:0);
             writeln('Gaji Total                 : ',gatot:0:0);
        end
     else
     if sts = 'B' then
         begin
             gaji:=1000000;
             writeln('Gaji Total                 : ',gaji:0:0);
         end
     else
         writeln('Kode yang Anda masukkan salah! Gunakan huruf kapita');
end;
procedure gol;
begin
     write  ('Golongan           [1/2/3] : '); readln(jab);
     if jab = '1' then
        dir
     else
     if jab = '2' then
        mgr
     else
     if jab = '3' then
        spv
     else
         writeln('Kode yang Anda masukkan salah');
end;
begin
     clrscr;
     writeln('==============================================');
     writeln('            Program Gaji Pegawai              ');
     writeln('==============================================');
     writeln;
     write  ('NIP                        : '); readln(nip);
     write  ('Nama                       : '); readln(nm);
     write  ('Tempat Lahir               : '); readln(tmplhr);
     write  ('Tanggal Lahir (DD MM YYYY) : '); readln(d,m,y);
     case m of
     1,3,5,7,8,10,12:begin
                       if (d>31) then
                            writeln('Tanggal salah')
                       else
                           gol;
                  end;
     4,6,9,11:begin
                   if (d>30) then
                      writeln('Tanggal salah')
                   else
                       gol;
              end;
     2:begin
            if (y mod 4=0) then
            begin
                 if (d>29) then
                 writeln('Tanggal salah')
                 else
                 gol;
                 end
            else
            begin
           if (d>28) then
             writeln('Tanggal salah')
            else
             gol;
             end;
       end;
     end;
     readkey;
     donewincrt;
end.


Flowchart