Minggu, 10 Januari 2010

pascal


PENGENALAN DASAR-DASAR BAHASA PEMROGRAMAN PASCAL

1. Sejarah Bahasa Pascal

Bahasa Pascal dikembangkan oleh Prof. Niklaus Wirth di Technical University Zurich, Swis sekitar tahun 1970. Nama Pascal di ambil dari tokoh ahli matematika Perancis abad ke 17 yakni Blaise Pascal. Bahasa Pascal sendiri merupakan kelanjutan dari bahasa pemrograman ALGOL (ALGOrithmic Language). Bahasa Pascal sendiri di kembangkan untuk pengajaran tentang pemrograman. Selanjutnya Pascal banyak dikembangkan oleh berbagai pihak antara lain ANSI Pascal (American National Standard Institute) yang dipergunakan sebagai bahasa standard, TURBO PASCAL yang di kembangkan oleh Borland Inc., UCSD Pascal yang dikembangkan oleh Universitas California di San Diego dan lain-lain. Dalam pembahasan ini menggunakan ANSI Pascal yang dilengkapi perintah-perintah dalam Turbo Pascal yang sangat populer di masyarakat. Bahasa Pascal sendiri merupakan bahasa pemrograman yang terstruktur karena program Pascal mempunyai struktur baku. Pada perkembangan selanjutnya PASCAL di kembangkan oleh Borland menjadi Delphi.

2. Ciri-Ciri Pascal

A. Berurutan

Susunan dari kode-kode dalam teks Pascal harus ditulis secara urut dari atas, pernyataan-pernyataan yang ditulis lebih awal akan dieksekusi lebih dahulu. Oleh karena itu, suatu pernyataan yang menyangkut suatu variabel di dalam program, maka variable itu harus terdefinisi dahulu sebelumnya. Hal ini terutama menyangkut pada pemanggilan sub-program oleh sub-program yang lain. Bisa dibaca lebih lanjut pada bagian sub-program.

B. Blok dengan batas-batas yang jelas.

Pascal memberikan pembatas yang jelas pada tiap-tiap blok, seperti pada blok program utama, sub-program, struktur kontrol (pengulangan/ pemilihan), dll. Pemakaian kata kunci begin untuk mengawali operasi pada blok dan end untuk menutupnya memudahkan programmer menyusun programnya dengan mudah.

C. Satu pintu masuk dan satu pintu keluar pada blok pemilihan

Contoh di atas juga mengilustrasikan pintu masuk tunggal pada suatu blok pemilihan yaitu suatu test logika X>0, dengan pintu keluaran yang satu pula (satu disini maksudnya bukan dua baris perintah output tapi suatu paket perintah yang dirangkai dengan begin .. end.

3 Menu-menu dasar dalam komplier pascal

Turbo Pascal memiliki 7 buah menu utama yang terdiri dari : File, Edit, Run, Compile, Options, Debug, dan Break / Watch. Untuk memilih salah satu dari menu itu anda bisa menekan tombol Alt + F (untuk memanggil menu file), atau menekan Alt + [huruf pertama dari menu]. Jika ingin kembali ke menu utama bisa dilakukan dengan menekan tombol F10, untuk pindah dari menu satu ke menu yang lain gunakan panah kanan atau panah kiri. Contohnya ketika berada di menu File maka untuk pindah ke menu Compile cukup menggunakan tombol panah kanan atau panah kiri , atau bisa juga dengan langsung menekan huruf C. Untuk menutup menu gunakan tombol Esc. Berikut ini adalah penjelasan tentang masing-masing menu pada Pascal:

1. Menu File : Didalam menu File banyak submenu yang bisa dipilih misalkan saja perintah Load / F3 yang berfungsi untuk memanggil berkas yang sudah tersimpan, dan banyak lainnya.

a. Submenu Load : Pilihan ini digunakan untuk memanggil program dari suatu folder atau directory ke dalam editor. Didalam submenu ini anda juga bisa memilih submenu yang lain dengan hanya menekan tombol huruf depan dari submenu yang dituju, contohnya anda mau ke submenu New, maka anda tinggal menekan huruf N.

b. Submenu Pick : Pilihan yang satu ini digunakan untuk mengambil salah satu dari beberapa buah program yang sebelumnya telah dimuat ke dalam jendela Edit. Hal ini ditujukan agar kita tidak perlu repot-repot lagi mencarinya di submenu load.

c. Submenu New rogram yang ada di editor akan dihapus dan program yang akan anda tulis dianggap sebagai program yang baru dengan nama NONAME.PAS, nama ini bisa anda rubah ketika anda mau menyimpannya.

d. Submenu Save [F2] : Pilihan ini digunakan untuk menyimpan suatu program yang sudah di edit ke dalam cakram atau folder, jika nama program itu masih NONAME.PAS maka Turbo Pascal akan menanyakan pada anda, nama apa yang akan anda berikan pada program yang akan disimpan tersebut. Atau anda juga bisa menekan tombol F2.

e. Submenu Write to : pilihan ini digunakan untuk menggantikan program lama dengan program yang baru (istilah kerennya Overwrite). Jika nama program anda sudah ada pada cakram atau folder maka ada verifikasi dari Turbo Pascal untuk penggantian nama.

f. Submenu Directory : pilihan ini digunakan untuk menampilkan direktori dan nama-nama file yang anda inginkan. Anda juga bisa menggunakan pilihan Load.

g. Submenu Change Dir : Pilihan yang satu ini digunakan untuk menampilkan direktori yang sedang digunakan dan juga bisa digunakan untuk mengganti nama direktori yang baru.

h. Submenu OS shell : Perintah ini digunakan bagi anda yang ingin ke tampilan DOS tetapi tanpa mematikan Turbo Pascalnya, untuk kembali lagi ke Turbo Pascal, anda tinggal mengetikan “exit”, tetapi biasanya ketika anda sedang membuat suatu program atau mengedit suatu program perintah ini tidak dapat dijalankan karena kurangnya kapasitas memory.

i. Submenu Quit [Alt + x] : Dari namanya sudah jelas, perintah ini digunakan untuk keluar dari Turbo Pascal dan kembali ke prompt DOS.

2. Menu Edit : Perintah edit ini digunakan untuk mengaktifkan editor Turbo Pascal.

3. Menu Run [Ctrl + F9] : Perintah ini digunakan untuk mengeksekusi program yang sudah anda buat. Anda juga bisa menekan Ctrl + F9 untuk mengeksekusi program anda.

a. Submenu Program Reset [Ctrl + F2] : Pilihan ini digunakan untuk memberitahukan Turbo Pascal bahwa anda selesai dengan pembetulan-pembetulan dan menginisialisasi debugger untuk operasi yang lain. Pilihan ini sekaligus membebaskan pengingat yang telah dialokasikan dan menutup semua berkas, tetapi tidak merubah nilai-nilai perubah. Pilihan ini sangat berguna jika anda ingin menjalankan pilihan File / OS shell

b. Submenu Go to Cursor [F4] : Pilihan ini digunakan untuk memulai / melanjutkan eksekusi program dimulai dari posisi saat eksekusi dimulai sampai tempat kursor berada. Jika kursor berada pada statement yang bersifat executable, seperti spasi atau baris komentar, maka eksekusi akan dilanjutkan sampai statement yang bersifat executable.

c. Submenu Trace Into [F7] perintah ini digunakan untuk mengeksekusi baris berikutnya, jika ada pemanggilan ke suatu subrutin, maka pelacakan akan dimulai dari statement pertama dari subrutin tersebut. Sekaligus juga akan memuat berkas-berkas atau unit Include jika dimungkinkan.

d. Submenu Step Over : Step over ini memiliki cara kerja yang hampir sama dengan Trace Into, hanya saja jika statement adalah sebuah prosedur atau fungsi, maka keseluruhan subrutin akan dikerjakan sekaligus dan debugger akan berhenti pada statement sesudah pemanggilan ke subrutin

e. Submenu User screen [Alt + F5] : Pada umumnya perintah ini digunakan untuk melihat hasil dari program yang telah compile dan kita run. Pada tampilan ini IDE [Integrated Debugger Environment] berpindah-pindah pada saat anda menjalankan dan mendebug program. Perintah ini juga digunakan oleh File / OS shell.

4. Menu Compile [Alt + F9] : Perintah ini digunakan untuk mengkompile program atau bisa juga kita bilang kalau program yang telah kita buat tadi dengan bahasa pascal di terjemahkan kedalam bahasa komputer agar si komputer ini mengerti apa-apa saja perintah kita.

a. Submenu Make : Pilihan ini digunakan untuk mengaktifkan perintah make, jika file yang primer telah diberi nama, maka file ini akan dikompilasi, jika tidak maka file yang terakhir yang sedang dimuat di editor akan dikompilasi.. Pilihan ini sangat berguna jika terdapat beberapa program yang secara fisik terpisah tetapi secara logikanya merupakan suatu kesatuan.

b. Submenu Build : Perintah ini mirip dengan perintah make, hanya saja perintah build ini sifatnya bebas, sedangkan perintah make hanya akan mengkompilasi file-file selain file yang digunakan.

c. Submenu Destination [Memory] : Perintah ini secara umumnya hanya berfungsi untuk memilih apakah hasil kompilasi akan disimpan dalam cakram atau folder sebagai file yang bertipe .EXE atau hanya di pengingat utama yang akan hilang pada saat anda keluar dari Turbo Pascal.

d. Submenu Find Error : Dari namanya anda pasti sudah tahu, yah perintah ini digunakan untuk menentukan lokasi kesalahan pada saat program dijalankan [run time error]. Lokasi kesalahan dinyatakan dengan format seg:off, misalnya 2BE0:FFD4. jika anda kembali ke IDE, turbo pascal akan menempatkan kursor pada baris dimana terjadi kesalahan. Jika anda terlanjur memindahkan kursor sembarangan maka anda bisa memindahkan kembali kursor ke tempat kesalahan dengan menekan Ctrl + Q + W.

e. Submenu Primary File : Perintah ini digunakan untuk menyatakan bahwa file .PAS akan dikompilasi pada saat make [F9] atau build [Alt + C + B] diaktifkan.

f. Submenu Get info : Tidak salah lagi, perintah ini digunakan untuk menampilkan jendela informasi dari program .PAS yang sedang anda gunakan, termasuk ukuran kode sumber [dalam sumber dan baris], ukuran file .EXE atau .TPU dalam byte dan data

5. Menu Options : Pilihan pada menu yang satu ini berfungsi mengkonfigurasi untuk mengoptimalkan penggunaan fasilitas-fasilitas pada turbo pascal.

4. Struktur Program Pascal

Struktur dari suatu program Pascal terdiri dari sebuah judul program (program heading) dan suatu blok program (program block) atau badan program (body program). Blok program dibagi menjadi dua bagian, yaitu bagian deklarasi (declaration part) dan bagian pernyataan (statement part). Bagian Deklarasi dapat terdiri dari deklarasi label (labels declaration), deklarasi konstanta (constants declaration), deklarasi tipe (type declaration), deklarasi variabel (variables declaration), deklarasi prosedur (procedures declaration) dan deklarasi fungsi (function declaration). Secara ringkas, struktur suatu program Pascal dapat terdiri dari:

1. Judul Program

2. Blok Program

a. Bagian Deklarasi: Deklarasi label, Deklarasi konstanta, Deklarasi tipe, Deklarasi variabel, Deklarasi prosedur, Deklarasi fungsi

b. Bagian Pernyataan

Suatu program Pascal yang paling sederhana adalah program yang hanya terdiri dari sebuah bagian pernyataan saja. Bagian pernyataan (statement part) merupakan bagian yang terakhir dari suatu blok. Bagian ini diawali dengan reserved word Begin dan diakhiri dengan reserved word End. Jadi suatu program Pascal yang paling sederhana dapat berbentuk :

Begin

End.

Kode Program 1 Statement Part

Blok statement harus diawali oleh kata Begin dan diakhiri dengan kata End yang ada titik dibelakangnya (End.). Sedangkan format umum untuk suatu program biasanya adalah:

Program …

Uses …

Var

Begin

…statement…

End.

Kode Program 2 Format Umum Program

5. Uses

Uses adalah sejenis istilah yang berarti kita menggunakan suatu library (pustaka) tertentu. Lalu sekarang, apakah library itu? Untuk lebih mudah, anggap saja library itu sejenis kotak yang di dalamnya ada perintah-perintah yang kita butuhkan untuk program kita nantinya, seperti clrscr, readkey, keypressed, readln, dsb. Pertanyaan lagi, mengapa program di atas tidak pakai uses? Karena statement writeln adalah memakai library standar milik TP (unit system), yang tidak perlu ditulis lagi.

Bahasa Pascal bersifat incase-sensitive yang artinya tidak mempedulikan huruf besar atau kecil. Jadi terserah mau menulis kata Begin dengan begin atau BEGIN atau bahkan BeGiN. Dan jangan lupa, pada umumnya di akhir suatu perintah selalu diakhiri dengan tanda titik koma (;).

6. Penggunaan Write dan Writeln

Write dan writeln adalah suatu perintah yang berfugsi untuk mencetak kata-kata atau variabel ke layar computer. Berikut ini adalah syntax dari penulisan write dan writeln.

Syntax write: write('');

Syntax writeln: writeln('');

Kode Program 3 Sintaks Write dan Writeln

Perintah write dan writeln memiliki sedukit perbedaaan. Perintah write hanya menulis saja sedangkan perintah writeln menulis kemudian memindahkan kursor ke baris berikutnya.

7. Variabel

Variabel bisa diibaratkan sebagai sebuah kantong yang bisa menyimpan sesuatu. Dalam program yang meminta inputan ke user, maka inputannya harus ditampung ke dalam kantong yang bernama variabel ini. Dan kantong ini juga bisa diakses oleh statement program lainnya. Berikut ini adalah contoh penggunaan variabel.

Var

umur : byte;

sekolah : string;

begin

write('Umur saya berapa? '); readln(umur);

write('Sekolah saya di mana?'); readln(sekolah);

writeln('Umurku ',umur,' tahun');

writeln('Aku bersekolah di ',sekolah');

readln;

end.

Kode Program 4 Penginputan Dari User

8 Uses Crt

Crt merupakan suatu unit yang mempunyai beberapa perintah yang dapat kita gunakan dalam hal pengolahan program berbasis teks. Beberapa perintah atau syntax yang memakai library ini adalah:

1. Clrscr : untuk membersihkan layar.

2. Textcolor : memberi warna pada tulisan.

3. TextBackground : memberi warna pada latar belakang tulisan tersebut.

4. GotoXY : memindahkan kursor ke posisi X,Y.

5. Sound, NoSound : membunyikan speaker dan menghentikannya.

6. Delay : menunda pemrosesan program beberapa waktu

9 Tipe Data

Dalam Pascal tipe data terbagi atas dua bagian yaitu tipe data dasar dan tipe data bentukan.

A. Tipe Data Dasar

Berikut ini bagian-bagian dari tipe data dasar:

1) Integer

a) Integer merupakan bilangan atau angka yang tidak memiliki titik desimal atau pecahan,

b) Contohnya: 10, +255, -1024, +32767. Dalam pemrograman dapat dituliskan sebagai integer atau int.

c) Jangkauan nilai

Tabel 1 Tipe Data Integer

Nama Tipe

Jangkauan

Ukuran Memori

Shortint

-128 … 127

1 byte

Byte

0 … 255

1 byte

Integer

-32768 … 32767

2 byte

Word

0 … 65535

2 byte

Longint

-2147483648…2147483647

4 byte

d) Operasi aritmetik: tambah +, kurang -, kali *, bagi /, sisa hasil bagi %

e) Operasi pembandingan : lebih kecil <, lebih kecil atau sama <= lebih besar >, lebih besar atau sama >= sama=,tidak sama><

f) Kegunaan integer adalah untuk menggolongkan suatu bilangan ke dalam jenis bilangan bulat(integer).

g) Contoh penggunaanya:

Var

Jumlah : integer;

Begin

Jumlah := 450;

WriteLn(‘Nilai JUMLAH = ‘,Jumlah);

End.

Kode Program 5 Penggunaan Tipe Data Integer

2) Real

a) Real merupakan bilangan atau angka yang biasa memiliki titik desimal atau pecahan dan ditulis sebagai : 235.45, +1023.55, -987.3456 atau dalam notasi ilmiah seperti: 1.245E+03, 7.45E-02, +2.34E-04, -5.43E+04, dsb.

b) Dalam pemrograman, dapat dituliskan sebagai : real

c) Jangkauan nilai

Tabel 2 Jangkauan Nilai Tipe Data Real

Tipe

Ukuran memori

(dalam byte)

Jangkauan nilai

Digit signifikan

Siangle

4

1.5x10E-45 .. 3.4x10E38

7-8

Real

6

2,9x10E-39 .. 1,7E+3b

11-12

double

8

5.0x10E-324 .. 1.7x10E308

15-16

Extended

10

1.9x10E-4951 .. 1.1x10E4932

19-20

Comp

8

-2E+63+1 .. 2E+63-1

19-20

d) Operasi aritmatik dan pembandingan juga berlaku bagi bilangan biasa.

e) Kegunaan real adalah untuk menggolongkan suatu bilangan ke dalam jenis bilangan yang memiliki titik desimal atau pecahan.

f) Contoh pengunaan :

Var

Q : real;

Begin

Q := 7.5;

WriteLn(‘Nilai Q = ‘,Q);

End.

Kode Program 6 Penggunaan Tipe Data Real

3) Character

a) Karakter adalah data tunggal yang mewakili semua huruf, symbol baca, dan juga simbol angka yang tidak dapat dioperasikan secara matematis, misalnya: ‘A’,’B’,…,’Z’,’a’,’b’,…’z’,’?’,’!’,’:’,’:’, dst.

b) Dalam pemrograman tipe dituliskan sebagai char.

c) Jangkauan nilai meliputi semua karakter dalam kode ASCII, atau yang tertera pada setiap tombol keyboard.

d) Operasi pembandingan dapat dilakukan dan dievaluasi menurut urutan kode ASCII, sehingga huruf ‘A’ (hex 41) sebenarnya lebih kecil dari huruf ‘a’ (Hex 61)

e) Kegunaannya: untuk menggolongkan suatu bilangan ke dalam jenis karakter.

f) Contoh penggunaan:

Misalnya : 032 pada tabel ASCII CHARACTER SET menunjukkan karakter.

Blank.

033 !

048 0

076 L

Dst.

4) Logical (Booelen)

a) Logical adalah tipe data yang digunakan untuk memberi nilai pada hasil pembandingan, atau kombinasi pembandingan.

b) Dalam pemrograman tipe logical dituliskan sebagai Boolean

c) Jangkauan nilai ada dua : true dan false

d) Kegunaannya adalah untuk memberi nilai pada hasil pembandingan atau kombinasi pembandingan.

e) Contoh penggunaan : 45>56 hasilnya false, Amir <>

f) Ada beberapa operasi untuk data jenis logik, antara lain and, or, dan not.

5) Const

a) Bilangan tetap (const) adalah tipe bilangan, baik bernilai bulat maupun tidak, yang nilainya tidak berubah selama algoritma dilaksanakan.

b) Dalam pemrograman tipe dituliskan sebagai const.

c) Kegunaanya adalah untuk menggolongkan suatu jenis bilangan baik yang bernilai bulat maupun tidak yang nilainya tidak berubah.

d) Jangkauan nilai meliputi semua bilangan yang mungkin.

e) Contoh penggunaan :

program luas_link;

const

phi=3.14;

var

R:real;

Luas:real;

begin

begin

writeln('masukkan nilai R');

readln(R);

if R<=0 Then Writeln('data salah');

Luas:=phi*R*R;

Writeln('hasil Luas=',Luas:4:2);

readln(Luas);

writeln('stop');

readln;

end;

end.

Kode Program 7 Penggunaan Constanta

B. Tipe Data Bentukan

1) Array

a) Array adalah tipe data bentukan, yang merupakan wadah untuk menampung beberapa nilai data yang sejenis. Kumpulan bilangan bulat adalah array integer, kumpulan bilangan tidak bulat adalah array real.

b) Masing masing data yang tertampung dalam sebuah larik akan ditandai sebagai elemen pertama sampai ke - n.

c) Array dapat dibuat beberapa dimensi, misalnya untuk menggambarkan matrix kita perlu menggunakan larik 2 dimensi.

d) Cara mendefinisikan ada dua macam, yaitu:

Nilai_ujian : array [1..10]; atau

int nilai_ujian [10];

e) Kedua definisi di atas menunjukan bahwa nilai_ujian adalah kumpulan dari 10 nilai bertipe bilangan bulat.

f) Kegunaannya adalah untuk menampung beberapa nilai data yang sejenis dalam satu variabel.

g) Contoh Program :

Program Contoh_Array_Input;

Uses Crt;

Var

Bilangan : array[1..50] of Integer;

Begin

ClrScr;

Bilangan[1]:=3;

Bilangan[2]:=29;

Bilangan[3]:=30;

Bilangan[4]:=31;

Bilangan[5]:=23;

Writeln('nilai varibel bilangan ke 3 =',Bilangan[3]);

Readln;

End.

Kode Program 8 Penggunaan Array

2) String

a) String adalah tipe data bentukan yang merupakan deretan karakter yang membentuk satu kata atau satu kalimat, yang biasanya diapit oleh dua tanda kutip.

b) Sebagai contoh : nama, almat, judul adalah tipe string.

c) Cara mendefinisaikannya adalah :

d) Nama, Alamat : String;

e) Kegunaanyan adalah untuk menampung beberapa karakter yang membentuk suatu kalimat.

f) Contoh penggunaanyan adalah:

Var

Kampus : string[10];

Begin

Kampus := ‘Udayana’;

Write(kampus);

Readln;

End;

Kode Program 9 Contoh Penggunaan String

PENGGUNAAN STATEMENT CONTROL PERUANGAN

Perulangan (looping) adalah proses yang cukup penting dalma setiap bahasa pemrogaraman. Pada setiap bahasa biasanya terdapat bebeapa jenis perulangan. Dalam pascal terdapat tiga jenis perulangan, yaitu For, While..do, dan Repeat ..Until.

1. Perulangan For

For adalah perulangan dengan perulangan teretentu. Perulangan ini bergantung pada suatu variabel integer. Pada setiap perulangan , variabel tersebut akan bertambah atau berkurang satu. Batas bawah dan batas atas proses for ini ditentukan oleh batas tersebut. Jumlah looping juga dapat ditentukan.

Tata penulisan looping for ini adalah:

For i:=n_awal to /downto n_akhir do

Proses yang dilaksanakan;

Kode Program 10 Contoh Penggunaan String

2. Perulangan While..Do

Proses perulangan while do adalah proses dengan suatu kondisi. Kondisi yang dimaksud sama seperti kondisi pada if. Jadi dapat disimpulkan bahwa while…do dapat disamakan dengan suatu kondisi if yang dapat melakukan perulangan. Secara logika juga dapat disamakan dengan kondisi if yang ditambah goto. Tata penulisannya adalah:

While kondisi do perintah_yang_di_ulang;

Kode Program 11 Tata Penulisan While..Do

3. Perulangan Repeat..until

Perulangan repeat…until ini hampir sama dengan perulangan while..do. perbedaannya adalah repeat..until mencetak kondisi pada akhir looping, sedangkan while pada akhir looping. Pada repeat..until tidak ditemukan begin dan end; separti pada while..do. Tata penulisan repeat..until ini adalah:

Repeat

Proses yang dilaksanakan

Until kondisi;

Kode Program 2.12 Tata Penulisan Repeat..Until

FUNGSI DAN PROSEDUR

Procedure dan Function adalah suatu program terpisah dalam blok sendiri yang berfungsi sebagai sub-program (modul program) yang merupakan sebuah program kecil untuk memproses sebagian dari pekerjaan program utama.

1. Prosedur

Prosedur diawali dengan kata cadangan Procedure di dalam bagian deklarasi prosedur. Prosedur dipanggil dan digunakan di dalam blok program yang lainnya dengan menyebutkan judul prosedurnya.

2. Function

Blok fungsi hampir sama dengan blok prosedur, hanya fungsi harus dideklarasikan dengan tipenya atau jenis hasilnya. Tipe deklarasi ini menunjukkan tipe hasil dari fungsi. Pada bahasa Pascal dikenal beberapa fungsi, misalkan : abs, pred, sqrt, sqr, succ dan sebagainya.

Fungsi-fungsi tersebut biasanya dikenal dengan Built in Function. Sedangkan function yang akan bicarakan disini adalah fungsi yang kita buat sendiri. Berbeda dengan procedure, function merupakan modul program yang menghasilkan suatu kuantitas. Hal ini dapat dilihat dari bentuk header-nya yang menyebutkan jenis data dari kuantitas yang dihasilkan.

PASSING PARAMETER

Passing parameter merupakan suatu mekanisme mengirim dan atau mengembalikan suatu nilai kepada fungsi atau prosedur. Dalam sebuah program java yang kita buat, mungkin diperlukan sebuah pengiriman parameter. Pengirimannya dapat berupa passing value atau passing reference. Dari pengiriman tersebut kita dapat menggunakan dua tipe, yakni yang dapat merubah nilai dari parameter tersebut atau tidak. dalam hal ini ada dua tipe passing pada method yaitu Passing By Value dan Passing By Reference.

Passing parameter ada 2 jenis yaitu ;

1. Pass By Value

Pass by value (parameter nilai), jika di dalam fungsi atau prosedur dilakukan perubahan nilai parameter yang dilewatkan secara nilai, maka nilai parameter yang sebenarnya tidak ikut berubah hal ini dikarenakan parameter yang dilewatkan secara nilai akan di copy sebagai nilai lokal di prosedur atau fungsi yang bersangkutan. Sebuah passing yang pada saat terjadi, method membuat sebuah salinan dari nilai variable yang dikirimkan ke method. Namun disini method tidak dapat secara langsung merubah nilai variable pengirimnya meskipun parameter salinannya sudah dimodifikasi nilainya. Atau dengan kata lain isi atau nilai dari variabel yang ada di parameter method (aktual) akan dicopykan ke parameter dari fungsi pemanggil. Dengan demikian tidak ada hubungannya parameter aktual dengan parameter pemanggilnya.

2. Pass By Reference

Pass by reference (parameter variabel), jika di dalam prosedur atau fungsi dilakukan perubahan nilai parameter yang dilewatkan secara reference, maka nilai parameter yang sebenarnya juga akan berubah.

PENGURUTAN DAN PENCARIAN BILANGAN

1. Sorting

Pengurutan data atau sorting merupakan salah satu tipeoperasi yang sangat penting dalam pengolahan data. Pada dasarnya erdapat 2 kondisi data urut yaitu urut naik (ascending) dan urut turun (descending). Data berada dalam kondisi urut naik apabila data pada urutan yang lebih awal mempunyai nilai yang lebih rendah daripada data pada urutan selanjutnya. Sedangkan, data berada pada kondisi turun urutadalah apabila data pada urutan yang lebih awal mempunyai nilai yang lebih tinggi daripada nilai berikutnya.

Contoh:

Ascending : 21 32 65 87 89 90

Descending : 78 45 21 18 11 1

Untuk mengurutkan bilangan kita dapat menggunakan beberapa cara, seperti insertion sort, shell sort, bubble sort, merge sort, quick sort.

2. Searching

Searching adalah suatu metoe untuk mencari nilai bilangan pada suatu deret bilangan dengan tipe yang sama.

Algoritma pencarian (searching algorithm) adalah algoritma yang menerima sebuah argumen kunci dan dengan langkah-langkah tertentu akan mencari rekaman dengan kunci tersebut. Setelah proses pencarian dilaksanakan, akan diperoleh salah satu dari dua kemungkinan, yaitu data yang dicari ditemukan (successful) atau tidak ditemukan (unsuccessful).

Metode pencarian data dapat dilakukan dengan dua cara yaitu pencarian internal (internal searching) dan pencarian eksternal (external searching). Pada pencarian internal, semua rekaman yang diketahui berada dalam pengingat komputer sedangakan pada pencarian eksternal, tidak semua rekaman yang diketahui berada dalam pengingat komputer, tetapi ada sejumlah rekaman yang tersimpan dalam penyimpan luar misalnya pita atau cakram magnetis.

Selain itu metode pencarian data juga dapat dikelompokka menjadi pencarian statis (static searching) dan pencarian dinamis (dynamic searching). Pada pencarian statis, banyaknya rekaman yang diketahui dianggap tetap, pada pencarian dinamis, banyaknya rekaman yang diketahui bisa berubah-ubah yang disebabkan oleh penambahan atau penghapusan suatu rekaman

PENGGUNAAN OPERASI FILE PADA PASCAL

1. Mendefinisikan Variabel Teks

File teks adalah file yang berisi karakter. Tipe file ini banyak dipakai sebagai data teks, misalnya data-data pada WordStar dan lain-lain. Setiap baris dari file teks ini aan diakhri oleh suatu ASCII 13 dan ASCII 10. Yaitu Carry Return dan Line Feed.

Untuk mendefinisikan suatu file teks, kita dapat memberikan kata ‘Text’ pada suatu variabel. Variable file text tersebut masih harus dicocokkan dengan suatu nama file. Sebagai contoh berikut ini adalah pendefinisian variabel text.

Var

TipeTeks: text;

Kode Program 13 Pendefinisian Variabel Text

2. Mengisi Variabel Teks

Untuk memcocokkan nama gile dengan suatu variabel teks adalah dengan menggunakan prosedur Assign . Tata penulisan prosedur assign adlah sebagai berikut:

Assign(Nama_Var,’directory:\namafile.txt’);

Kode Program 14 Penulisan Assign

Dimana Nama_var merupakan nama variabel file teks, directory adalah tempat dimana anda akan menyimpan file tersebut, dan nama file adalah nama dari file yang ingin anda buat.

3. Membuat Suatu File Teks

Untuk membuat suatu file yang belum ada atau dengan kata lain membuat suatu file pada file teks kita harus menggunakan perintah ‘rewrite’. Tata penulisan perintah rewrite adalah sebagai berikut:

Rewrite(N_var);

Kode Program 2.15 Penulisan Rewrite

4. Menutup Suatu File Teks

Untuk menutup suatu file teks kita harus memproses prosedur close yang mempunyai tata penulissan sebagai berikut:

Close(N_Var);

Kode Program 16 Penulisan Close

Dimana N_Var adalah nama suatu variabel file yang sudah di assign.Kita dapat memeriksa apakah proses prosedur rewrite dan close berlangsung dengan baik dengan menggunakan fongsi IOResult. Perlu diingat bahwa IOResult hanya akan berfungsi bila kita memberikan directive {$I-} dan menutupproses dengan {$+}.

5. Menulis ke File Teks

Untuk menulis ke suatu file yang telah diuka, kita dapat menggunakan perintah Write atau Writeln. Perbedaan kedua perintah tersebut adalah Write tidak akan memberikan Carry Return (ASCII 13) dan Line Feed (ASCII 10) ke dalam file, sedang Writeln akan menambahkannya. Tata penulisannya adalah:

Write(N_Var,V1,V2,V3…);

writeln(N_Var,V1,V2,V3…);

Kode Program 17 Penilisan Write dan Writeln

Dimana N_var adalah variable file yang telah didefinisikan pada assign yang telah dibuka. V1, V2, dan seterusnya merupakan variabel ayng akan dituliskan. Variabel ini dapat juga berupa variable string secara langsung.

Proseur write dan writeln juga dapat dilacak menggunakan IOResult. Bila IOResult menghaslkan 0 berarti proses berjalan sukses dan bila IOResult di luar 0 berarti proses mengalani kegagalan.

6. Membuka Kembali File Teks

Rewrite merupakan suatu perintah yang berguan untuk membuka suatu file. Bila file tersebut telah ada, isi file akan dihilangkan terlebih dahulu. Supaya suatu file dapat dibuka dan filenya tidak hilang. Anda dapat menggunakan prosedur reset. Tata penulisannya adalah sebagai berikut:

Reset(N_var);

Kode Program 18 Prosedur Reset

Perlu kiat perhatikan bahwa suatu file dengan tipe teks hanya dapat dibaca saja, tidak untuk ditulis, setelah proses reset. Untuk membuka suatu file supaya dapat ditulis, kita harus menggunakan perintah append. Tata penulisannya adalah sebagai berikut:

Append(N_Var);

Kode Program 19 Penulisan Append

7 Membaca Dari File

Untuk membaca suatu file, kita dapat meggunakan perintah read dan readln. Perbedaan read dan readln adalah readln akan memindahkan lokasi pembacaan file ke akhir carry return dan line feed berikutnya sedang read tidak. Tata penulisan read dan readln adalah sebagai berikut:

Read(N_Var, V1,V2,V3..);

Readln(N_Var,V1,V2,V3,…);

Kode Program 20 Penulisan Read dan Readln

Dimana N_var merupakan nama variabel file yangtelah diassign dan dibuka menggunakan rewrite ataupun, reset V1, V2, dan seterusnya merupakan variabel yang akan di baca. Variabel tersebut harus diberikan besaran digit pembacaan. Perintah read ini juga dapat di cek dengan menggnakan IOResult.

8. Akhir File dan Baris

Jika suatu file terdiri dari beberapa string atau beberapa record, kita harus mengecek apakah pembacaan telah mencapai akhir file. Untuk mengecek akhir file tersebut kita harus menggunakan fungsi EOF. EOF akan menghasilkan suatu kondisi benar bila ternyata telah mencapai akhir file dan salah bila belum merupakan suatu file. Tata penulisan fungsi EOF adalah sebagai berikut:

V_Bool := EOF(V_File);

Kode Program 21Penulisan Fungsi EOF

Dimana V_Bool merupakan suatu variabel Boolean yang merupakan hasil dari EOF. V_File adalah suatu variabel file yang telah di-assign dan dibuka.

Disamping EOLN yang berguna untuk mengecek akhir dari suatu baris. Akhir baris yang dimaksud tanda Carry return atau line feed. Tata penulisan EOLN adalah sebagai berikut:

V_Bool:= EOF(V_File);

Kode Program 22 Penulisan EOLN

9. Buffer

Pada file teks ini sebenarnya dilakukan perintah write. Data yang ditulis tersebut tidak langsung dimasukkan kedalam disk., tetapi akan dimasukkan kedalam buffer terlebih dahulu.

Bila besar buffer tidak diubah, secara otomatis Besar buffer akan diset menjadi 128 byte. Untuk mengubah buffer kita harus menggunakan perntah SetTextBuff adalah sebagai berikut:

SetTextBuff(V_file.V_buff[,ukuran];

Kode Program 23 Penulisan Buffer

Dimana V_file adalah variabel file yang telah diassign.V_buff merupakan tempat buffer yang merupakan array karakter. Option ukuran tidak harus diberikan. Ukuran tersebut dapat berupa bilangan ataupun suatu variabeltipe world.

2.6.10 Menyimpan Buffer

Buffer yang telah dibahas diatas akan disimpan ke disk setiap terjadi perintah close. Bila dalam suatu proram kita ingin menyimpan buffer tersebut ke disk tanpa harus menggunakan perintah close, anda dapat melakukannya dengan menggunakan perintah flush. Perintah flush ini akan menyimpan semua isi dari buffer ke disk. Tata penulisan Flush adalah sebagai berkut:

Flush(N_Var);

Kode Program 24 Perintah Flush

Dimana N_Var merupakan suatu variabel file yang telah di assign, dibuka dan telah dilakukan perintah write atau writeln.

Tidak ada komentar: