Minggu, 22 Desember 2013

Manfaat Belajar Bahasa Pemrograman 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.

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.

Tampilan Program


Flowchart

Program Menghitung Gaji Menggunakan IF

Program hitung_gaji;
Uses wincrt;
Var nama:string[20];jabatan:string;
Gaji:longint;
Tunj,ppn,Total,gajibersih:real;
Begin
Clrscr;
Write( 'Nama Karyawan     : '); readln(nama);
Write('Masukkan Jabatan  : '); readln(jabatan);
If  (jabatan='Direktur') or (jabatan='direktur') then
     Begin
 Gaji:=4000000;
 Tunj:=0.1* gaji;
     End
Else If  (jabatan='Manager') or (jabatan='manager') then
     Begin

 Gaji:=3000000;
 Tunj:=0.01* gaji;
     End
Else If  (jabatan='Supervisor') or (jabatan='supervisor') then
     Begin
 Gaji:=2000000;
 Tunj:=0.1* gaji;
     End
Else If  (jabatan='Karyawan') or (jabatan='karyawan') then
     Begin
 Gaji:=1000000;
 Tunj:=0.1* gaji;
     End
Else
     Begin
 Gaji:=800000;
 Tunj:=0.1* gaji;
     End;
Writeln('Gaji Bersih        : Rp.',gaji);
Writeln('Tunjangan Jabatan  : Rp.',tunj:9:2);
Ppn:=0.2*gaji;
Writeln('PPN 10 %           : Rp.',ppn:9:2);
Total:=gaji+total;
Writeln('Total Gaji         : Rp.',total:9:2);
Readln;

End.


Flowchart

Selasa, 03 Desember 2013

Membuat Tabel di HTML

Tabel digunakan untuk menyajikan data dalam betuk baris dan kolom. Adapun Elemen-Elemen yang digunakan untuk membuat Tabel adalah:
Atribut Tabel tag <TD>



Mengatur Border
Border adalah garis yang mengelilingi sebuah tabel.
Contoh:
<html>
<head><title>Sampul Ilmu</title></head>
<body>
<BODY><CENTER>
<P>Menggunakan tag <b>&lt;
TABLE BORDER="1"&gt;</b><P>
<TABLE BORDER="1">
<TR>
<TD>Baris #1 Kolom #1</TD>
<TD>Baris #1 Kolom #2</TD>
</TR>
<TR>
<TD>Baris #2 Kolom #1</TD>
<TD>Baris #2 Kolom #2</TD>
</TR>
</TABLE></body></html>

Menggabungkan  Kolom 
Contoh :
<html>
<head><title>Sampul Ilmu</title></head>
<BODY>
<TABLE BORDER="1" CELLPADDING="1" CELLSPACING="1">
<TR>
<TD COLSPAN=2>Kolom A & B</TD>
</TR>
<TR>
<TD>Kolom C</TD>
<TD>Kolom D</TD>
</TR>
</TABLE></BODY>
</html>


Menggabungkan Baris
Contoh
<html>
<head><title>Sampul Ilmu</title></head>
<BODY>
<TABLE BORDER="1" CELLPADDING="1" CELLSPACING="1">
<TR>
<TD ROWSPAN="2">Kolom A & C</TD>  <!-- Menggabung baris -->
<TD>Kolom B</TD>
</TR>
<TR>
<TD>Kolom D</TD>
</TR>
</TABLE>
</BODY>
</html>


Perataan Tabel
Posisi tabel dapat diatur pertaannya dengan menyertakan atribut ALIGN pada tag <TABLE>
Contoh:
<html><body>
<TABLE BORDER ALIGN="center">
<TR>
<TH>ALIGN="center"</TH>
<TD>Kolom #A Tengah</TD>
<TD>Kolom #B Tengah</TD>
</TR>
</TABLE><BR>
<TABLE BORDER ALIGN="right">
<TR>
<TH>ALIGN="right"</TH>
<TD>Kolom #A Kanan</TD>
<TD>Kolom #B Kanan</TD>
</TR>
</TABLE><BR>
<TABLE BORDER ALIGN="left">
<TR>
<TH>ALIGN="Left"</TH>
<TD>Kolom #A Kiri</TD>
<TD>Kolom #B Kiri</TD>
</TR>
</TABLE>
</body></html>


Mengatur Isi Sel
Teks dalam sel dapat diatur (align) dengan: Rata kiri, rata tengah, dan rata kanan 
Atribut yang digunakan adalah :
Align={“left” | “center” | “right”} pada tag <TD>
Atau 
Align={“left” | “center” | “right” | “justify”} pada tag <P> dalam tag <TD> 
Contoh:
<html>
<BODY>
<TABLE BORDER="1" CELLSPACING="1" WIDTH="100%">
<TR bgcolor="silver">
<td>Text Rata Kiri</td>
<td>Text Rata Tengah</td>
<td>Text Rata Kanan</td>
<td>Text Rata Kiri-Kanan</td>
</TR>
</TR>
<TR>
<TD ALIGN="left" bgcolor="yellow">Kata-kata dalam sel ini rata KIRI</TD>
<TD ALIGN="center">Kata-kata dalam sel ini rata TENGAH</TD>
<TD ALIGN="right" bgcolor="green"><font color="yellow">Kata-kata dalam sel ini rata KANAN</TD>
<TD><p Align="Justify">Kata-kata dalam sel ini rata KIRI-KANAN</TD>
</TR>
</TABLE>
</BODY>
</html>



Semoga Bermanfaat

Jumat, 29 November 2013

Latihan Soal Struktur Data

1.      Struktur pertama dalam pascal adalah....
A.      Char;
B.      String
C.      End.                
D.     Writeln
E.      Uses Crt;
Jawaban : E
Alasan : Setiap program pascal diawali "Uses Crt;" untuk mengenali sistem operasi  yang digunakan.

2.      Untuk melihat hasil dari program yang di kerjakan tekan tombol....
A.      Ctrl+F5
B.      Ctrl+F9
C.      Ctrl+F2
D.     Ctrl+F12
E.      Ctrl+F4
Jawaban : B
Alasan : Untuk menjalankan listing kode pascal pada menu bar (Run > Pilih Run atau melalui  Keyword pada keyboard "Ctrl+F9")

3.      Berapa kode yang digunakan  untuk membuat tulisan berwarna “CYAN”....
A.      4
B.      2
C.      128
D.     7
E.      3
Jawaban : E
Alasan : Ada beberapa kode angka untuk merubah warna teks, salah satunya "3" untuk membuat teks berwarna CYAN.

4.      Perintah dasar sederhana dalam program pascal adalah.....
A.      Readln
B.      End
C.      Write
D.     Writeln
E.      Uses crt;
Jawaban : C
Alasan : Perintah dasar pertama saat mempelajari bahasa pascal adalah "Write"

5.      Tipe data bahasa pascal untuk TRUE FALSE  adalah....
A.      String
B.      Char
C.      Boolean
D.     Byte
E.      Real
Jawaban : C
Alasan : Ada beberapa jenis tipe data dalam pascal, salah satunya "Boolean" yaitu tipe data yang hanya mempunyai dua buah nilai (True atau False)

6.      Siapakah penemu program pascal....
A.      Greyson Change
B.      Prof. Niklaus Wirth
C.      Kondrazuse
D.     Prof. Niklaus Smirth
E.      Dr.  Hercules
Jawaban : B
Alasan : Sejarah bahasa pemrograman pascal menyatakan bahwa penemu bahasa pascal yaitu "Prof. Niklaus Wirth"

7.      Struktur bahasa pemrograman pascal paling pertama adalah....
A.      Var;
B.      Begin
C.      End;
D.     Uses crt;
E.      Writeln;
Jawaban : D
Alasan : Setiap program pascal diawali "Uses Crt;" untuk mengenali sistem operasi yang digunakan.

8.      Tipe data pascal untuk karakter adalah....
A.      Char
B.      Boolean
C.      Integer
D.     Real
E.      Byte
Jawaban : A
Alasan : Ada beberapa tipe data dalam bahasa pascal, salah satunya "Char" yaitu tipe data untuk memasukan sebuah karakter

9.      Kapan terbentuknya pascal....
A.      1981
B.      1971
C.      1961
D.     1991
E.      1987
Jawaban : B
Alasan : Dalam pascal disebutkan bahwa bahasa pemrograman ini diciptakan pada tahun "1971"

10.  Apa kepanjangan dari USES....
A.      Unit Secure
B.      Unit Syntax
C.      Unit System
D.     Up Software
E.      Unit Semiconductor
Jawaban : C
Alasan : USES adalah untuk pengenalan sistem operasi yang digunakkan dan merupakan kepanjangan dari "Unit System"

11.  Berikut ini adalah penulisan identifier yang benar dalam pemrograman pascal adalah....
A.      9Program_Satu
B.      Program_Satu
C.      Program Satu
D.     Begin
E.      Array
Jawaban : B
Alasan : Dalam bahasa pascal penulisan identifier tidak boleh memakai spasi atau simbol lain atau angka didepan.

12.  Tipe bilangan bulat dalam bahasa pascal dikenal sebagai....
A.      Byte
B.      Integer
C.      Char
D.     String
E.      Boolean
Jawaban : B
Alasan : Ada beberapa tipe data dalam bahasa pascal, salah satunya adalah untuk bilangan yang dipecah juga menjadi beberapa bagian sesuai range dan membaca bilangan bulat atau bukan, untuk bilangan bulat memakai tipe "Integer"

13.  Istilah “perulangan” dalam pemrograman pascal dikenal dengan....
A.      Repeating
B.      Again
C.      Function
D.     Replay
E.      Looping
Jawaban : E
Alasan : Bahasa pascal terdapat beberapa istilah, salah satunya "Looping" yaitu istilah yang digunakkan untuk perulangan

14.  Perintah untuk menutup program pada Pascal adalah...
A.      END.
B.      Program
C.      Uses crt;
D.     Finish
E.      END;
Jawaban : A
Alasan : Setiap listing pascal harus memakai perintah untuk mengakhiri program, dan perintahnya yaitu "END."

15.  Menggambarkan program secara logika merupakan fungsi dari...
A.      Flowchart
B.      DxDiag
C.      Begin
D.     SI
E.      Sistem Operasi
Jawaban : A
Alasan : Gambar program secara logika yang berupa simbol dan mempunyai arti dan alur yang benar disebut "Flowchart"

16.  Deklarasi yang digunakan untuk mengidentifikasikan data yang nilainya sudah ditentukan dan pasti, tidak  dapat  dirubah dalam program disebut deklarasi....
A.      Deklarasi label
B.      Deklarasi Konstanta
C.      Deklarasi tipe
D.     Deklarasi Variabel
E.      Deklarasi Prosedur
Jawaban : B
Alasan : Pendeklarasian yang sudah di tentukan nilainya langsung di listing kodenya dan tidak dapat dirubah merupakan "Deklarasi Konstanta"

17.  Dibawah ini termasuk dalam Deklarasi dalam Pascal, kecuali....
A.      Deklarasi perubah
B.      Deklarasi proses
C.      Deklarasi konstanta
D.     Deklarasi tipe
E.      Deklarasi prosedur
Jawaban : B
Alasan : Ada beberapa deklarasi dalam bahasa pascal, yang tidak termasuk adalah "Deklarasi Proses"

18.  Bilangan  yang  mengandung pecahan, palingsedikit  harus ada satu digit  sebelum dan sesudah titik  desimal termasuk dalam tipe data...
A.      Real
B.      Boolean
C.      Integer
D.     Longint
E.      Byte
Jawaban : A
Alasan : Ada beberapa tipe data dalam bahasa pascal, salah satunya adalah untuk bilangan yang dipecah juga menjadi beberapa bagian sesuai range dan membaca bilangan bulat atau bukan, untuk bilangan desimal memakai tipe "Real"

19.  Prosedur yang digunakan untuk membersihkan layar saat program dijalankan adalah....
A.      Writeln
B.      Readln
C.      Begin
D.     Write
E.      Clrscr
Jawaban : E
Alasan : Untuk membersihkan layar pada saat program berjalan dalam bahasa pascal haruslah mendeklarasikan sebuah perintah yaitu "Clrscr"

20.  Bentuk dari suatu  statement IF  berada  di dalam lingkungan statemen IF  yang  lainya, disebut IF dalam  kondisi....
A.      IF bersarang
B.      IF bercabang
C.      IF tunggal
D.     IF-THEN
E.      IF do while-until
Jawaban : A
Alasan : Ada logika bersyarat dalam bahasa pascal yang disebut IF, dan bila ada IF di lingkungan IF maka disebut "IF bersarang"

21.  Tipe data terstruktur yang  terdiri  dari  sejumlah komponen  komponen yang mempunyai tipe sama, disebut tipe data...
A.      Array
B.      Byte
C.      Longint
D.     Integer
E.      Boolean
Jawaban : A
Alasan : Tipe data yang terdiri dari komponen-komponen yang mempunyai tipe yang sama disebut "Array"

22.  Perintah untuk menampilkan atau cetak dilayar monitor tanpa pindah baris, disebut...
A.      Writeln
B.      Write
C.      Readln
D.     Read
E.      Begin
Jawaban : B
Alasan : Dalam bahasa pascal untuk mencetak dilayar monitor tanpa pindah baris menggunakan perintah "Write"

23.  Perintah untuk menampilkan atau cetak dilayar monitor lalu pindah bariskebawah, disebut...
A.      Writeln
B.      Write
C.      Readln
D.     Read
E.      Begin
Jawaban : A
Alasan : Dalam bahasa pascal untuk mencetak dilayar monitor dengan pindah ke baris selanjutnya menggunakan perintah "Writeln" 

24.  Suatu identifier non-standar yang nilainya tidak tetap atau nilainya merupakan hasil dari suatu proses,disebut....
A.      Variabel
B.      Tipe Data
C.      Prosedur
D.     Deklarasi
E.      Array
Jawaban : A
Alasan : Identifier dalam bahasa pascal yang dapat diubah nilainya disebut "Variabel"

25.  Suatu program terpisah dalam blok sendiri yang berfungsi sebagai subprogram ( program bagian ), disebut...
A.      Variabel
B.      Tipe Data
C.      Prosedur
D.     Deklarasi
E.      Array
Jawaban : C
Alasan : "Prosedur" adalah subprogram dari sebuah prgoram pascal yang bisa dideklarasikan di program pascal.