Materi Pascal


Tipe Data dan Operator

Tipe Data menunjukkan suatu nilai yang dpat digunakan oleh sutu variable yang bersangkutan.
Tipe Data dalam Pascal :
1. Tipe Data Sederhana, terdiri dari :
a. Tipe data standar :
integer : merupakan tipe data berupa bilangan bulat
real : merupakan jenis bilangan pecahan
char : merupakan karakter yg ditulis diantara tanda petik tunggal. Ex : ‘A’, ‘a’, ‘5′                      dll
string : merupakan urut-urutan dari karakter yang terletak di antara tanda petik                             tunggal.
boolean : merupakan tipe data logika, yang berisi dua kemungkinan nilai: TRUE                         atau FALSE .
b. Tipe data didefinisikan pemakai
2. Tipe Data Terstruktur, terdiri dari :
a. Array
b. Record
c. File
d. Set
3. Tipe Data PointerOperator
Tanda operasi (operator) di dalam bahasa Pascal di kelompokkan dalam :
1.  Assignment operator (operator pengerjaan) menggunakan simbol titik dua diikuti oleh tanda sama dengan (:=). Contoh –> A:=B;

2. Binary operator digunakan untuk mengoperasikan dua buah operand yang berbentuk konstanta ataupun variable. Operator ini digunakan untuk operasi arithmatika yang berhubungan dgn nilai tipe data Integer dan Real. Operasi yang dilakukan adalah : Pertambahan (+), Pengurangan (-), Perkalian (*), Pembagian Bulat (DIV), Pembagian Real (/) dan Modulus atau Sisa Pembagian (MOD)

3. Unary operator, operator ini menggunakan sebuah operand saja dapat berupa unary minus dan unary plus. Contoh : +2.5, a+(+b) dll

4. Bitwise operator digunakan untuk operasi bit per bit pada nilai integer.
Operator yang digunakan (NOT, AND, OR, XOR, Shl, Shr

Dasar Program Pascal

a)      Unsur-unsur Pemrograman
Mendapatkan data dengan membaca data dari default input (key board, file atau sumber data lainnya).

b)      Menyimpan data ke dalam memori dengan struktur data yang sesuai,

c)      Memproses data dengan instruksi yang tepat.

d)     Menyajikan atau mengirimkan hasil olahan data ke default output (monitor, file atau tujuan lainnya).

Nama yang dipergunakan du dalam program Pascal disebut dengan pengenal atau Identifier. Identifier digunakan untuk nama: Program, Sub-program (procedure dan function), nama: Variable, Constant, Type, Label.
Nama-nama ini digunakan untuk pemakaian dan pemanggilan dalam program. Ketentuan penulisan identifier

  1. Nama identifier harus dimulai dengan karakter huruf alfabet: a sampai z, A sampai Z atau karakter ‘_’ (underscore – garis bawah)
  2. Karakter berikutnya boleh karakter numerik (0 .. 9) atau kombinasi alphanumerik (huruf-numerik).
  3. Panjang nama, pada berbagai versi Pascal umumnya antara 32 – 63.
  4. Tidak boleh menggunakan karakter istimewa: + – * / | \ = < > [ ] . , ; : ( ) ^ @ { } $ # ~ ! % & ` ” ‘ dan ? Contoh penulisan:
    Penulisan yang benar: NamaMahasiswa, Gaji_Karyawan, PX4, dll.
    Penulisan yang salah: 3X, A & B, C Z dll.

Variable adalah identifier yang berisi data yang dapat berubah-ubah nilainya di dalam program. Deklarasi Variable adalah :

  1. Memberikan nama variabel sebagai identitas pengenal
  2. Menentukan tipe data variabel
    Contoh deklarasi variabel: var X : integer;
    R  : real;
    C  : char;
    T  : boolean;

Konstanta adalah identifier yang berisi data yang nilainya tidak berubah di dalam program.
Deklarasi Konstanta adalah:

a)      Memberikan nama konstanta sebagai identitas pengenal

b)      Menentukan nilai konstanta
Contoh deklarasi konstanta: conts MaxSize = 100; {integer}
ExitC = ‘Q’; {char}

Reserved Words atau kata-kata cadangan pada Pascal adalah kata-kata yang sudah didefinisikan oleh Pascal yang mempunyai maksdu tertentu.Suatu Unit adalah kumpulan dari konstanta, tipe-tipe data, variabel, prosedur dan fungsi-fungsi. Unit standar pada Pascal yang bisa langsung digunakan adalah System, Crt, Printer Dos dan Graph. Untuk menggunakan suatu unit, maka kita harus meletakkan clausa atau anak kalimat Uses di awal blok program, diikuti oleh daftar nama unit yang digunakan. Pada materi ini yang akan dibahas adalah unit Crt. Unit ini digunakan untuk memanipulasi layar teks (windowing, peletakan cursor di layar, Color pada teks, kode extended keyboard dan lain sebagainya.

Beberapa Statemen Turbo Pascal

Statemen adalah perintah untuk pengerjaan program pascal.
Statemen terletak di bagian deklarasi statemen dengan diawali oleh kata cadangan BEGIN dan diakhiri dengan kata cadangan END. Akhir dari setiap statemen diakhiri dengan titik koma [;].
Statemen statemen dalam bahasa Pascal terdiri dari pernyataan yang berupa fungsi dan prosedur yang telah disediakan sebagai perintah standar Turbo Pascal.

1. Statemen-statemen yang digunakan untuk input/output.

# Read/Readln [prosedur].

Perintah ini digunakan untuk memasukkan [input] data lewat keyboard ke

dalam suatu variabel.

Sintaks: Read/Readln(x); (ingat, selalu diakhiri dengan titik koma [;])

Keterangan : x = variabel.

Read = pada statemen ini posisi kursor tidak

pindah ke baris selanjutnya.

Readln = pada statemen ini posisi kursor akan

pindah ke baris selanjutnya setelah di

input.

# Write/Writeln [prosedur].

Digunakan untuk menampilkan isi dari suatu nilai variable di

layar.

Sintaks: Write/Writeln(x);

Keterangan : x = variabel.

Write/Writeln= statement ini digunakan untuk mencetak variable ke dalam monitor

2. Statemen-statemen yang digunakan untuk pengaturan letak layar.

# ClrScr [prosedur].

Perintah ini digunakan untuk membersihkan layar.

sintaks: ClrScr; [Clear screen]

Struktur Bahasa PASCAL secara umum, adalah sebagai berikut :

1. Bagian Judul Program

2. Bagian Deklarasi :

a. Deklarasi tipe data (TYPE)

b. Deklarasi variabel (VAR)

c. Deklarasi konstanta (CONST)

d. Deklarasi label (LABEL)

e. Deklarasi sub-program (PROCEDURE dan FUNCTION)

3. Bagian Deskripsi (Bagian Program Utama Perintah-perintah).

Saya tidak akan me-review teori maupun praktek contoh-contoh program pascal yang materi tersebut belum disampaikan oleh dosen kita tercinta ( Bpk Wawang S.Kom ).

Berikut saya coba review materi yang sudah disampaikan oleh dosen kita, dan saya anggap perlu untuk di sampaikan pada tulisan ini.

Program heading / Judul Program

Judul program dalam Turbo Pascal bersifat optional dan tidak ada pengaruhnya dalam program. Jika ditulis akan memberikan nama program dan suatu daftar parameter optional dimana program itu berkomunikasi. Daftar itu bisa terdiri dari sederetan indentifier yang diakhiri dengan tanda kurung dan dipisahkan dengan tanda koma.

Contoh :

Program Latihan(Input,Output);

Uses Clause

Bagian uses clause digunakan untuk menentukan library yang dibutuhkan saat proses program. LIBRARY merupakan file penyimpan subroutine yang secara berulang digunakan saat proses program. Library ini diistilahkan sebagai unit dalam Turbo PASCAL yang terdiri dari SYSTEM, OVERLAY, GRAPH, DOS, CRT, WINCRT yang ditempatkan dalam file TURBO.TPL.

Karena di perkuliahan kita menggunakan Turbo Pascal For Windows 1.5 maka hal ini tidak perlu dibahas secara mendalam, intinya kita hanya menerapkan Uses Clause pada unit WINCRT.

Sebagai catatan, Unit system merupakan unit yang secara otomatis akan disertakan dalam setiap program, unit inilah yang mengatur semua perintah dasar input dan output pada Pascal. Sedangkan unit-unit lain hanya akan disertakan bila kita pilih pada bagian uses.

Contoh penerapan :

Uses WinCrt; (menggunakan Unit WinCrt)

Declaration

Bagian ini meliputi deklarasi untuk label, const, type, var, procedure dan function.

Syarat terpenting dalam pembentukan suatu program adalah, bahwa setiap variabel, type non-standard, label, procedure non-standard, serta function non-standard yang dipakai didalamnya harus di-“nyatakan” / di-“deklarasi”kan terlebih dahulu pada bagian deklarasi. Setiap deklarasi tersebut harus bersifat unik (tidak boleh serupa satu sama yang lain).

Penulisan nama dalam deklarasi tersebut harus memenuhi syarat-syarat sebagai berikut :

– panjang nama maximum 63 character, diawali dengan alphabet

– tidak ada special character kecuali tanda garis bawah / underscore (”_”)

– tidak boleh serupa dengan reserved word (kata tercadang)

– tidak boleh serupa dengan indentifier lainnya.

Ketentuan penulisan identifier :

a. Nama identifier harus dimulai dengan karakter huruf alfabet: a sampai z, A sampai Z atau karakter ‘_’ (underscore / garis bawah)

b. Karakter berikutnya boleh karakter numerik (0 .. 9) atau kombinasi alphanumerik (huruf-numerik).

c. Panjang nama, pada berbagai versi Pascal umumnya antara 32 – 63.

d. Tidak boleh menggunakan karakter istimewa: + – * / | \ = < > [ ] . , ; : ( ) ^ @ { } $ # ~ ! % & ` ” ‘ dan ?

Contoh Penulisan yang benar : w_1ro Alpha Satu_Sisi luasPersegi

Contoh Penulisan yang salah : 3D satu-Sisi C#

Jenis identifier

a. Identifier umum

Merupakan identifier yang didefinisikan sendiri oleh pemrogram. Pemrogram mempunyai kebebasan untuk menentukan nama identifiernya, dengan syarat nama tersebut tidak sama dengan identifier standar dan reserved word yang akan dibahas lebih lanjut. Hal ini untuk mencegah kesalahan yang bisa timbul akibat tumpang tindih identifier dalam program.

b. Identifier Standar (Baku)

Merupakan identifier yang didefinisikan oleh pembuat kompiler Pascal. Biasanya pembuat kompiler menyediakan suatu library yang sudah ada didalam kompiler. Library berisi berbagai procedure, fungsi atau unit yang sudah siap pakai. Misalnya Turbo Pascal Windows 1.5 memiliki suatu unit untuk memproses output yaitu wincrt, gotoxy, yang dengan mudah bisa dipakai oleh programmer di dalam menuliskan kode-kode programnya.

Dinamai Identifier Standar karena suatu kompiler tidak harus memilikinya, masing-masing kompiler dimungkinkan mempunyai identifier yang berbeda untuk suatu tugas yang hampir sama, misalnya Turbo Pascal versi DOS menggunakan crt untuk melakukan fungsi yang sama dengan wincrt (TPW 1.5).

Beberapa Identifier Standar yang dimiliki oleh kompiler-kompiler Pascal antara lain:

abs arctan boolean char cos dispose eof eoln exp false input integer ln maxint new odd ord output pack page pred read readln real reset rewrite round sin sqr sqrt succ text true trunc write writeln

c. Identifier “reserved word”

yaitu yang sudah didefinisikan dan digunakan oleh bahasa PASCAL itu sendiri (Kita tidak bisa menamai identifier kita dengan ini).

Beberapa Reserved Word dalam Pascal antara lain:

Selain dari Reserved Word di atas, Turbo Pascal masih memiliki tambahan Reserved Word berikut:

ABSOLUTE ASSEMBLER () FAR FORWARD INDEX

Variable Declaration

Setiap variabel yang digunakan dalam program harus didefinisikan terlebih dahulu sebelum digunakan. Cara penulisan ini adalah :

Var

<nama var> : <type data variable>;

Statement

Statemen adalah perintah untuk pengerjaan program pascal. Statemen terletak di bagian deklarasi statemen dengan diawali oleh kata cadangan BEGIN dan diakhiri dengan kata cadangan END.

Akhir dari setiap statemen diakhiri dengan titik koma [;]. Statemen statemen dalam bahasa Pascal terdiri dari pernyataan yang berupa fungsi dan prosedur yang telah disediakan sebagai perintah standar Turbo Pascal.

Bagian ini merupakan inti dari program. Seluruh perintah dan urutannya serta proses Input/Output dalam program perlu disusun secara teratur oleh penyusun program. Segala yang ada pada bagian uses maupun deklarasi merupakan pendukung terhadap isi program.

Comment

Untuk membuat program kita menjadi mudah dibaca dan dimengerti, maka perlu diberi keterangan (Comment) yang akan diabaikan oleh kompiler. Untuk membuat keterangan gunakan tanda kurawal

Contoh penerapan :

{ ini adalah keterangan } atau

(* ini adalah keterangan *).

Type data yang disediakan Turbo Pascal

Type variable yang disediakan pada TURBO PASCAL :

1. Ordinal types

Type data yang mempunyai urutan pasti, dan masih terbagi menjadi

a. Integer

Type variable yang beguna untuk pengolahan data yang bulat (bilangan bulat), type ini masih terbagi atas berberapa menurut jangkauan data dan ukurannya :

Type Jangkauan Ukuran
Shortint -128 .. 127 8 bit
Integer -32768 .. 32767 16 bit
Longint -2147483648 .. 2147483647 32 bit
Byte 0 .. 255 8 bit
Word 0 .. 65535 16 bit

b. Char

Type variabel yang berguna untuk pengolahan character ASCII, type character ini penulisannya ditandai dengan dua buah petik tunggal seperti : ‘A’, ‘3′,’*’,#7 untuk menyatakan ‘ harus ditulis ””

c. Boolean

Type variable yang berguna untuk pengolahan hal yang hanya mempunyai dua ketentuan yaitu benar(TRUE) dan salah(FALSE) saja.

2. Real types

Type variable yang beguna untuk pengolahan data yang tidak bulat(bilangan desimal), untuk type real ini juga terbagi atas:

Operator relasi yang mengembalikan hasil Boolean

Proses pemrograman komputer

Ketika melakukan pemrograman dengan menggunakan bahasa tingkat tinggi, ada beberapa operasi yang harus dilakukan. Mekanisme ini dikenal sebagai siklus edit-compile-run. Mempelajari proses ini adalah berbeda dengan belajar bagaimana untuk membuat program; kita harus menguasai proses ini, dan hal tersebut adalah penting.

Berikut ini adalah proses membuat sebuah program :

1. Edit

Ketika kita menulis sebuah program dalam bahasa tingkat tinggi, kita menulis perintah-perintahnya dalam bentuk perintah bahasa pemrograman dengan menggunakan text editor.

Dokumen yang kita hasilkan pada tahap ini dikenal sebagai source code.

2. Compile

Setelah kita selesai menulis program kita, kita perlu meng-kompilasi-nya dengan menggunakan suatu software yang disebut sebagai compiler. Kompiler mengubah source code kita menjadi bahasa mesin. Jika program kita gagal di kompilasi (tejadi kesalahan “grammatical” atau sytnax errors pada kode kita), kita harus meng-edit kembali kode kita sampai dapat dikompilasi dengan benar.

Setelah suatu program berhasil dikompilasi artinya dia telah benar secara syntax, tetapi masih dapat mengandung runtime error, atau logical error.

3. Run

Setelah program kita dikompilasi, kita dapat menjalankannya. Ketika kita menjalankan program kita, hal yang pertama yang perlu kita lakukan adalah memeriksa apakah program tersebut berjalan seperti yang diharapkan, proses ini dikenal sebagai testing.

Pada tahapan ini dapat ditemui logical error ataupun runtime error. Untuk menghilangkan runtime error atau logical error kita perlu kembali ke langkah pertama, jadi inilah yang dikenal sebagai siklus edit-compile-run sampai program dapat berjalan dengan benar.

uses Crt;

perintah ini merupakan suatu UNIT, Unit mempunyai beberapa prosedur dan jenisnya. UNIT dalam Pascal harus disertakan untuk mengaktifkan prosedur-prosedur yang akan diprogram. Sedangkan Prosedur didalam Pascal dapat berbentuk prosedur yang didefinisikan atau dibuat sendiri oleh pemakai atau prosedur yang telah disediakan oleh Pascal. Prosedur yang didefinisikan sendiri oleh pemakai harus dideklarasikan terlebih dahulu.

Unit-unit dalam PASCAL 5.5 ada tujuh buah unit standar, ketujuh unit tersebut disimpan dalam file yang bernama TURBO.TPL. Unit-unit tersebut yaitu :

  1. UNIT System — Unit ini merupakan sebuah runtime Turbo Pascal yang mendukung semua proses yang dibutuhkan pada waktu runtime (eksekusi program). Anda akan menemui pesan error seperti ini “RUNTIME ERROR” bila Anda salah dalam memanipulasi system yang diprogramkan. Unit ini Otomatis ditambahkan oleh Pascal walau Anda tidak mencantumkan nya sewaktu meng-Compile.
  2. UNIT CRT — Unit ini digunakan untuk keperluan program dalam memanipulasi layar, dalam hal ini bisa berupa manipulasi TEKS, KURSOR, KODE EXTENDED KEYBOARD dll.
  3. UNIT Printer — Sesuai dengan namanya maka unit ini tentu saja digunakan dalam program yang berhubungan dengan printer, misalkan kita akan mencetak suatu program ke printer maka unit ini harus digunakan untuk mengaktifkan printer. Printer yang bisa didukung hanya printer jenis LPT dan COM, sedangkan printer jenis USB tidak bisa diakses karena pada waktu itu belum ada printer yang berjenis USB, kecuali printer tersebut menyediakan DRIVER untuk DOS kemungkinan printer USB bisa digunakan oleh PASCAL 5.5 ini.

Contoh program yang menggunakan unit printer :

(* Program Pencetakan Printer, Catatan dlm Pascal 5.0 keatas harus ditambahkan kata Lst *)

Uses Printer;
Begin
WriteLn(Lst,’Saya sedang mencoba Printer.’);
WriteLn(Lst,’Create By : Suryatekno©2008′);
WriteLn(Lst,’============================’);
End.

  1. UNIT DOS — Unit ini digunakan bila anda akan mengaktifkan prosedur-prosedur yang ada dalam DOS seperti DosVersion, GetTime, SetTime, DiskSize, DiskFree, Call, Dir, Path, Copy dan sebagainya.

Contoh program yang menggunakan unit DOS :

(* Program melihat versi DOS dan sisa Disk,
Create By : Suryatekno *)

Uses DOS,CRT;
var ukuran : longint;
Begin
ukuran := DiskFree(0);
ClrScr;
WriteLn(‘Versi DOS yang Anda gunakan adalah : MS-DOS ‘,DosVersion);
WriteLn(‘Sisa Kapasitas Harddisk Anda : ‘,ukuran,’ Bytes’);
WriteLn;
WriteLn(‘Tekan tombol apa saja untuk keluar’);
ReadLn;
End.

  1. UNIT Graph — Unit ini digunakan untuk menampilkan grafik seperti Tabel, Chart Statistik dan sebagainya. Biasanya Unit ini digunakan bila kita ingin menampilkan suatu grafik seperti pada MS-EXCEL. Bisa juga digunakan untuk membuat animasi, Game dan sebagainya.

{ Program menampilkan Grafik Bar,
Create By : bcpcomputer }

Uses Graph;
var
Driver,Model : integer;
I : integer;
Begin
Driver := VGA;
Model := VGAHi;
InitGraph(Driver, Model, ‘ ‘);

Line(20,25,20,155);
Line(20,155,200,155);

Randomize;
for I := 0 to 4 do
Bar3D(30+I*35, 154-Random(100),55+I*35,154,15,TopOn);
WriteLn;
WriteLn(‘Tekan Sembarang Tombol untuk Keluar’);
ReadLn;
End.

  1. UNIT Turbo3 — Unit ini digunakan pada pascal 3.0 sedangkan untuk pascal versi 4.0 keatas unit ini sudah tidak digunakan lagi atau tidak difungsikan. Kegunaannya adalah sewaktu anda meng-upgrade dari pascal versi 3.0 ke 4.0 atau 5.0 , Untuk latihan kita sekarang unit ini tidak kita gunakan saja.
  2. UNIT Graph3 — Unit ini digunakan untuk meng-konversi grafik yang dibuat oleh pascal versi 3.0 agar dapat digunakan oleh pascal 4.0 keatas, sama seperti unit Pascal3 unit ini pun tidak kita gunakan pada latihan kita ini sebab kita menggunakan PASCAL versi 5.5 yang lebih canggih dan lengkap.

Untuk Lebih jelasnya mengenai unit-unit ini silahkan anda buka Folder DOC yang ada pada Direktory TP. Atau bila Anda orang yang kreatif dan tidak cepat puas silahkan Anda mencari referensi-referensi dari situs atau media yang lainnya, Ini sangat saya anjurkan dan saya acungkan jempol bila Anda melakukan hal ini.

Sekarang kita lanjutkan mengenai pembahasan program perkenalan yang telah anda buat pertama kali.

var
x,y,z      :   longint;
lagi     :   char;
namak     :   string[20];

Pada bagian ini disebut VARIABLE , Semua bahasa pemrograman memerlukan variabel untuk mengetahui type atau jenis data yang digunakan oleh si programer. Pada contoh program pengenalan tersebut kita memberitahukan kepada PASCAL bahwa type atau jenis variabel yang kita gunakan untuk variable x,y, dan z bertype longint, variable lagi bertype char dan variable namak bertype String dengan panjang karakter sebanyak 20 string.

1.    DEKLARASI VARIABEL (VARIABLE DECLARATION)

Deklarasi variabel adalah suatu deklarasi yang nilai nya sudah pasti, dengan kata lain Deklarasi jenis ini tidak dapat dirubah lagi atau konstan. Pada contoh program diatas, deklarasi variabel untuk x, y dan z berjenis longint ( bilangan bulat dari -2147483648 sampai 2147483648 ) maka dalam program tersebut, hanya bisa dimasukan tipe data yang berjenis tersebut. Pada contoh diatas bila anda memasukan nilai selain tipe tersebut, misalkan anda memasukan angka A pada pada pertanyaan masukan nilai x..= maka program akan error, Nah agar tidak terdapat pesan error pada program tersebut, maka program tersebut harus ditambahkan suatu baris perintah yang berjenis logika jadi bila user memasukan nilai-nilai x,y dan z selain dari jenis tersebut maka akan dikeluarkan suatu peringatan yang memberitahukan user agar memasukan nilai untuk x, y dan z hanya bisa dimasukan oleh type variabel tersebut.

Silahkan Anda tambahkan baris perintah pada program testprog.pas diatas, agar user tidak salah dalam memasukan type data yang telah ditentukan !.

2.    DEKLARASI KONSTANTA (CONSTANT DECLARATION)

Sama seperti deklarasi variabel, deklarasi konstanta juga bersifat tetap (konstan), bedanya adalah bila dalam deklarasi variabel kita hanya mendeklarasikan jenis dari data yang harus dikerjakan, sedangkan pada deklarasi konstanta kita langsung menyebutkan nilainya. Deklarasi konstanta tidak menggunakan tanda titik dua ( : ) seperti pada deklarasi variabel tetapi menggunakan tanda sama dengan ( = ).

Contoh Program yang menggunakan deklarasi konstanta

 
{ Progam    : Penggunaan deklarasi konstanta
  Design By : suryatekno©2008 }
 
uses crt;
 
const
    nama = 'Amir';
    nip = 'A3110';
    gaji = 1000000;
    lembur = 50000;
begin
 clrscr;
    writeLn('Nama Pegawai : ',nama);
    writeLn('N I P : ',nip);
    writeLn('Gaji Pokok : ',gaji);
    writeLn('Uang Lembur : ',lembur);
    writeLn('--------------------- +');
    writeLn('Total Gaji : ',gaji+lembur);
    writeLn;
    writeLn('Tekan tombol ENTER untuk keluar');
 readLn;
end. 

3.    DEKLARASI TIPE (TYPE DECLARATION)

Deklarasi tipe biasanya digunakan bila kita bekerja dengan ARRAY atau larik. Deklarasi Tipe mempunyai banyak sekali jenis dan type yang ditanganinya, saya tidak bisa menjelaskannya satu persatu kepada Anda dikarenakan terbatasnya space atau ruang yang disediakan pada situs ini, disamping itu pokok bahasan tutorial ini adalah PEMROGRAMAN DELPHI, saya kuatir nantinya pokok bahasan tersebut tidak bisa dimuat karena keterbatasan ini. Untuk itu saya sekali lagi menugaskan kepada Anda untuk mencari dari situs atau media lain mengenai DEKLARASI TYPE ini.

Contoh Program yang menggunakan deklarasi tipe

{ Program   : Contoh penggunaan deklarasi tipe
  Design By : Suryatekno©2008 }
 
uses crt;
 
type J = array[1..8] of string[20];
 
const
   Jadwal : J=('Mandi','Sarapan','Meeting',
               'Menemui Pak Badrun','Pulang',
               'Mandi','Makan Malam','Istirahat');
   var
    I : word;
 
    begin
      clrscr;
      writeLn('Jadwal Hari ini');
      writeLn('===============');
      writeLn;
        for I:=1 to 8 do
          writeLn('  ',I,'. ',Jadwal[I]);
          writeLn('Tekan enter untuk Keluar.....');
     readLn;
  end.

4.    DEKLARASI LABEL (LABEL DECLARATION)

Deklarasi label adalah suatu deklarasi yang digunakan untuk memberi tanda (MARK) pada program agar program dapat berpindah atau meloncat pada tanda (MARK) yang ditentukan. Deklarasi ini mirip dengan bahasa PEMROGRAMAN BASIC yang menggunakan NOMOR BARIS untuk berpindah dari baris ke baris. Penulisan Deklarasi label ini harus menggunakan perintah LABEL yang dipisahkan dengan tanda koma ( , ).

Contoh program yang menggunakan deklarasi Label.

{ Program : Memilih dengan deklarasi Label
  Design By : Suryatekno©2008 }
 
uses crt;
label
 1,2,3,4,keluar; {Deklarasi label yang ditentukan}
 
var
ketik,ulang : char;
 
begin
 
1: { label ke - 1 sebagai pokok program }
 clrscr;
 writeLn('Menu Masakan Hari ini');
 writeLn('---------------------');
 writeLn;
 writeLn('a. Nasi Putih + Rendang');
 writeLn('b. Nasi Putih + Telur Dadar');
 writeLn('c. Nasi Putih + Tempe Goreng');
 writeLn;
 writeLn('Masukan Huruf a , b atau c untuk Pesanan Anda.');
 write('Pilihan Anda..? ');readLn(ketik);
     
{ Jika user memilih pilihan tersebut, maka program akan
  meng-eksekusi program sesuai dengan LABEL yang dituju }

    if ketik='a' then 
      begin            
       goto 2;
      end;
       if ketik='b' then
        begin
         goto 3;
        end;
         if ketik='c' then
          begin
           goto 4;
          end
 
{ User tidak memilih atau salah dalam memasukan pilihan
  selain yang ditentukan maka program akan meng-eksekusi
  program yang lainnya, dalam program ini akan ditampil
  kan kalimat "Anda tidak pesan apa-apa." lalu 
  meng-eksekusi LABEL keluar yang mengakhiri program }
  
          else
          begin
           clrscr;
           writeLn('Anda tidak pesan apa-apa.');
           writeLn('Mungkin Anda tidak Lapar..);
           writeLn;
           writeLn('Tekan Enter untuk keluar..');
           readLn;
           goto keluar;
          end;
 
2: { label ke - 2 bila user memilih pilihan a }
 clrscr;
 writeLn('Pesanan Anda Nasi Putih + Rendang, Terima Kasih.');
 writeLn;
 write('Pilih Lagi..(y/t) ? ');ReadLn(ulang);
       if (ulang='y') or (ulang='Y') then
          begin
            goto 1;
          end
       else
          begin
            goto keluar;
          end;
 
3: { label ke - 3 bila user memilih pilihan b }
 clrscr;
 writeLn('Pesanan Anda Nasi Putih + Telur Dadar,Terima Kasih.');
 writeLn;
 write('Pilih Lagi..(y/t) ? ');ReadLn(ulang);
      if (ulang='y') or (ulang='Y') then
         begin
           goto 1;
         end
      else
         begin
           goto keluar;
         end;
 
4: { label ke - 4 bila user memilih pilihan c }
 clrscr;
 writeLn('Pesanan Anda Nasi Putih + Tempe Goreng,Terima Kasih.');
 writeLn;
 write('Pilih Lagi..(y/t) ? ');ReadLn(ulang);
      if (ulang='y') or (ulang='Y') then
         begin
           goto 1;
         end
      else
         begin
           goto keluar;
         end;
 
keluar: { label keluar yang mengakhiri program }
 
end.

Penulisan label bebas sesuai dengan keinginan anda, bisa sebuah kata atau karakter, yang penting nama label tidak boleh sama dengan nama variabel, type, atau konstanta yang anda tetapkan. Bila itu terjadi maka kemungkinan akan terjadi konflik variabel dalam pengeksekuasian program. Contoh diatas akan terus dilakukan selama anda memilih pilihan yang di tetapkan. Ada cara yang lebih praktis ketimbang menggunakan LABEL yaitu dengan printah CASE – OF yang akan dibahas nanti.

4.    DEKLARASI PROSEDUR (PROCEDURE DECLARATION)

Deklarasi prosedur adalah sebuah deklarasi yang dibuat dalam program agar bisa digunakan lagi dalam program, jadi deklarasi prosedur merupakan sebuah SUB PROGRAM yang bisa dipanggil sewaktu-waktu dalam program bila dibutuhkan. Dalam sebuah program yang terstruktur, Deklarasi Prosedur ini sangat dibutuhkan agar program menjadi lebih simpel. Untuk mengerti arti dari PROSEDUR ini saya berikan contoh kasus sebagai berikut : misalkan ada sebuah proses yang yang harus dikerjakan berulang kali untuk menampilkan kata “SURYATEKNO” , maka dalam program yang terstruktur kata tersebut disimpan dalam sebuah prosedur yang dapat dipanggil lagi dimanapun kata tersebut diperlukan.

Contoh program yang menggunakan Deklarasi Prosedur.

uses crt;
 
{ini adalah prosedur dgn nama s
 yang akan menampilkan kata bcpcomputer}
 
Procedure s; 
 begin
  write('bcpcomputer');
 end;
 
{akhir prosedur}
 
{program utama}
 
 begin
  clrscr;
  s;   { prosedur yang dipanggil }
 
  WriteLn(' adalah suatu organisasi yang menghimpun');
  writeLn('orang-orang yang mempunyai minat sama.');
  writeLn;
 
  s;   { prosedur yang dipanggil }
 
  writeLn(' juga merupakan sebuah kelompok belajar.');
  writeLn;
  writeLn('Tekan Enter untuk keluar...');
  readLn;
end.
{akhir program utama}

Prosedur mempunyai banyak jenisnya, disini saya hanya akan menjelaskan suatu prosedur yang mudah-mudah saja agar anda sebagai pemula mengerti dalam menggunakan prosedur ini.

Prosedur yang paling terkenal adalah Prosedur REKURSI (RECURSION PROCEDURE) . Prosedur ini adalah sebuah prosedur yang menggunakan sendiri prosedurnya, jadi prosedur ini adalah prosedur yang memakan prosedur . Contoh kasus proses rekursi yang rumit adalah sebagai berikut :

Anda diminta untuk memindahkan sebuah piringan yang berbeda satu dengan yang lainnya secara satu persatu dari sebuah tumpukan ke tumpukan yang lainnya, dengan syarat piringan yang lebih kecil tidak boleh berada dibawah piringan yang lebih besar, dan pemindahan nya harus satu persatu tidak boleh sekalian. Lihat gambar.


Rekursi yang rumit, disebut juga sebagai MENARA HANOI

Anda harus memindahkan piringan yang berjumlah 20 buah piringan yang berbeda dari menara A ke menara C, untuk keperluan tersebut Anda diberikan sebuah menara lagi yaitu menara B. Yang menjadi pertanyaan adalah : Berapa kali Anda memindahkan sebuah piringan yang sama, dan berapa langkah yang Anda tempuh serta berapa lama Anda memindahkannya ?. Sebagai bantuan lagi Anda diberikan contoh untuk 2 buah piringan sebagai berikut : Pertama Anda pindahkan piringan yang ke 2 ke menara B lalu pindahkan piringan ke 1 ke menara C setelah itu pindahkan piringan ke 2 yang berada di menara B ke menara C selesai ( Ingat piringan yang lebih kecil tidak boleh berada dibawah piringan yang besar..! ). Sekarang cobalah untuk 20 piringan yang ditugaskan kepada anda !.

Pusing menghitung nya yah..?, kalau pusing berapa langkah yang Anda tempuh untuk tugas itu, dibawah ini saya berikan contoh program yang memakai prinsip REKURSI untuk menghitung langkah yang diperlukan. serta akan diperlihatkan piringan mana saja yang akan dipindahkan terlebih dahulu, Anda bisa saja memasukan 1000 piringan misalnya, tetapi Anda harus sabar menunggunya, sebab bila Anda memasukan waktu yang diinginkan sebesar 1 detik saja untuk setiap piringan, berarti Anda harus sabar menunggu program untuk menghitung dan memperagakan kepada Anda selama 3 Hari. Untuk contoh ini cobalah Anda masukan Tugas memindahkan piringan diatas dengan bantuan program ini..hehehe malas ni yeee .

Uses crt;
{ Awal Prosedur Rekursi }
procedure MenaraHanoi(Jumlah      : Integer;
          Sumber,Tujuan,Bantuan   : Char;
          var Langkah,Jumlah_A,
                 Jumlah_B,Jumlah_C,Waktu : Integer);
Var
  Baris_Sumber,Kolom_Sumber,
  Baris_Tujuan,Kolom_Tujuan : Integer;
Begin
  if Jumlah > 0 Then
   Begin
    MenaraHanoi(Jumlah-1,Sumber,Bantuan,Tujuan,
                Langkah,Jumlah_A,Jumlah_B,Jumlah_C,Waktu);
    Langkah := Langkah+1;
     if Sumber = 'A' Then
      Begin
       Kolom_Sumber := 30;
       Baris_Sumber := 24-Jumlah_A;
       Jumlah_A     := Jumlah_A-1;
     End
     Else
      if Sumber = 'B' Then
       Begin
        Kolom_Sumber := 40;
        Baris_Sumber := 24-Jumlah_B;
        Jumlah_B     := Jumlah_B-1;
       End
     Else
      Begin
       Kolom_Sumber  := 50;
       Baris_Sumber  := 24-Jumlah_C;
       Jumlah_C      := Jumlah_C-1;
      End;
 
  if Tujuan = 'A' Then
  Begin
   Kolom_Tujuan := 30;
   Jumlah_A     := Jumlah_A+1;
   Baris_Tujuan := 24-Jumlah_A;
  End
  Else
   if Tujuan = 'B' Then
    Begin
     Kolom_Tujuan := 40;
     Jumlah_B     := Jumlah_B+1;
     Baris_Tujuan := 24-Jumlah_B;
    End
    Else
     Begin
      Kolom_Tujuan := 50;
      Jumlah_C     := Jumlah_C+1;
      Baris_Tujuan := 24-Jumlah_C;
 
     End;
 
Delay(Waktu*1000);
GotoXY(Kolom_Sumber,Baris_Sumber); Write(' ');
GotoXY(Kolom_Tujuan,Baris_Tujuan); Write(Jumlah);
GotoXY(18,24); Write(Langkah);
 
MenaraHanoi(Jumlah-1,Bantuan,Tujuan,Sumber,
            Langkah,Jumlah_A,Jumlah_B,Jumlah_C,Waktu);
 End;
End;
{Akhir Rekursi}
 
{Program Utama}
Var
  Jumlah, Langkah            : Integer;
  Sumber,Bantuan,Tujuan      : Char;
  I,Baris                    : Integer;
  Jumlah_A,Jumlah_B,Jumlah_C : Integer;
  Waktu                      : Integer;
 
  Begin
  ClrScr;
  Write('Berapa Piringan Yang akan dipindah ? ');
  ReadLn(Jumlah);
  Write('Waktu yang Anda inginkan (0-32) detik ? ');
  ReadLn(waktu);
   ClrScr;
   GotoXY(25,24); WriteLn(' Sumber  Bantuan   Tujuan');
   For I:=Jumlah DownTo 1 Do
    Begin
     Baris := 23-(Jumlah-I);
     GotoXY(30,Baris); WriteLn(I);
    End;
 
  Langkah  := 0;
  Sumber   :='A';
  Bantuan  :='B';
  Tujuan   :='C';
  Jumlah_A := Jumlah;
  Jumlah_B := 0;
  Jumlah_C := 0;
 
   GotoXY(1,24); Write('Jumlah Langkah = ');
    MenaraHanoi(Jumlah,Sumber,Tujuan,Bantuan,
                Langkah,Jumlah_A,Jumlah_B,Jumlah_C,Waktu);
   ReadLn;
  End.
{Akhir Program Utama}

5.    DEKLARASI FUNGSI (FUNCTION DECLARATE)

Deklarasi fungsi adalah deklarasi gabungan antara deklarasi Prosedur, type dan variabel. Kumpulan deklarasi ini disediakan oleh pascal untuk mempermudah dalam penyusunan program sehingga berbentuk sebuah fungsi. Pada sebuah fungsi komponen-komponen dari ketiga deklarasi tersebut dijadikan satu kesatuan yang dapat digunakan pada program yang majemuk. Adapun tata cara penulisan deklarasi fungsi adalah sebagai berikut :


Tata Cara Penulisan Deklarasi Fungsi

Dari gambar diatas terlihat bahwa ketiga deklarasi yang telah diuraikan sebelumnya dijadikan satu kesatuan yang lebih simple dan praktis. Untuk lebih jelasnya cobalah Anda ketik di editor Pascal program dibawah ini, setelah itu Anda jalankan program tersebut dengan perintah RUN.

{ Program contoh Deklarasi fungsi
  create by : Suryatekno@2008 }
 
Function Hasil(A,B,C : longint) : longint;
  Begin
    Hasil  :=  A*A+B*B+C;
  end;
 
   Var X,Y,Z : longint;
    Begin
                 WriteLn('Hasil dari X^2 + Y^2 + Z adalah..?');
                 Write('Jika Nilai  X = ');ReadLn(X);
                 Write('Dan Nilai   Y = ');ReadLn(Y);
                 Write('Serta Nilai Z = ');ReadLn(Z);
                 Write('Maka Hasil dari X^2 + Y^2 + Z');
                 WriteLn(' adalah : ',Hasil(X,Y,Z); 
                 {Hasil - adalah nama fungsi yang dipanggil}
                 WriteLn;
                 WriteLn('Tekan Enter untuk Keluar..');
                 ReadLn;
               end.

Download materi diatas click disini

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s