Prosedur adalah suatu program terpisah dalam blok sendiri yang berfungsi sebagai subprogram (program bagian). Diawali dengan kata cadangan “Procedure” didalam bagian deklarasi prosedur. Prosedur banyak digunakan pada program yang terstruktur karena :
- Merupakan penerapan konsep program modular, yaitu memecah-mecah program yang rumit menjadi program-program bagian yang lebih sederhana dalam bentuk prosedur-prosedur.
- Untuk hal-hal yang sering dilakukan berulang-ulang, cukup dituliskan sekali saja dalam prosedur dan dapat dipanggil atau dipergunakan sewaktu-waktu bila diperlukan.
FUNGSI
Blok fungsi hampir sama dengan blok prosedur, hanya fungsi harus
dideklarasikan dengan tipenya. Tipe deklarasi ini menunjukkan tipe
hasil dari fungsi.
Bentuk umum :
FUNCTION identifier (daftar parameter) : type ;
Blok fungsi juga diawali dengan kata cadangan Begin dan di akhiri
dengan kata cadangan End dan titik koma.
Perbedaan fungsi dengan prosedur adalah :
- Pada fungsi, nilai yang dikirimkan balik terdapat pada nama fungsinya ( kalau pada prosedur pada parameter yang dikirimkan secara acuan).
- Karena nilai balik berada di nama fungsi tersebut, maka fungsi tersebut dapat langsung digunakan untuk dicetak hasilnya. Atau nilai fungsi tersebut dapat juga langsung dipindahkan ke pengenal variable yang lainnya.
- Pada prosedur, nama prosedur tidak dapat digunakan lagsung, yang dapat langsung digunakan adalah parameternya yang mengandung nilai balik.
for :nilai pencacah automatis.
while :nilai pencacah harus ada rumusnya. kondisi di chet aksi baru di kerjakan, selama kondisi benar aksi akan dikerjakan.
repeat : Kondisi dikerjakan dulu baru aksi dikerjakan, kalo kondisi salah aksi akan dikerjakan terus.
1. For do (Pengulangan Tanpa Tanpa Kondisi)
For do merupakan struktur Pengulangan dimana aksi dilakukan sebanyak hitungan pencacah Pengulangan. Pencacah Pengulangan dapat diset sesuai dengan nilai yang ingin kita mulai.
Example:
for pencacah Pengulangan dari x sampai y do
berarti aksi dilakukan sebanyak hitungan pencacah Pengulangan, yaitu dari x sampai y sebanyak b-a+1 kali.
Sedangkan,
2.Repeat Until ( Pengulangan dengan kondisi )
Repeat berarti ulangi dan until berarti sampai. Jadi, repeat - until adalah struktur Pengulangan dimana aksi dilakukan hingga kondisi ( persyaratan ) berhenti terpenuhi.
Example: misalkan kita ingin mengetahui nilai dari mahasiswa jika data masukannya adalah NIM.
Program Pencarian
{Program mencari nilai mahasiswa didalam tabel dengan NIM= a.Tabel sudah berisi data NIM, nama dan nilai}
Algoritmanya:
tinjau entry pertama tabel
repeat
if NIM pada entry tabel sama dengan NIM yang dicari then ambil nama dari NIM tersebut
else
tinjau entry berikutnya
until nilai yang dicari ditemukan atau akhir tabel sudah terlampaui
Pada repeat - until jumlah Pengulangan tidak dapat diketahui di awal. Karena Pengulangan aksi akan terus dilakukan sampai ditemukan entry dari apa yang ditanyakan atau akhir tabel sudah terlampaui, berbeda dengan for-do yang jumlah pengulangannya dilaksanakan.
3. While do ( Pengulagan dengan Kondisi )
While berarti selagi/ selama dan do berarti lakukan. Jadi, While-do artinya struktur pengulangan dimana selama kondisi ( persyaratan ) Pengulangan masih benar, maka aksi dikerjakan.
Contohnya saja pada repeat-until tadi selama kita memasukkan NIM tidak benar/ belum ditemukan akhir tabel belum terlampaui, maka dapat dicari NIM pada entry tabel yang sama, jika sudah ditemukan mengambil nilai tersebut, selanjutnya meninjau entry berikutnya didalam tabel.
Example:
Program Pencarian
{Program mencari nilai mahasiswa didalam tabel dengan NIM= a.Tabel sudah berisi data NIM, nama dan nilai}
Algoritma
Tinjau entry pertama tabel
While NIM yang dicari belum ditemukan dan akhir tabel belum terlampaui do
If NIM pada entry tabel sama dengan NIM yang dicari then ambil nama, nilai dari NIM tersebut
Else
Tinjau entry berikutnya didalam tabel
· Pada While do kondisi pengulangan di evakuasi di awal Pengulangan, berbeda dengan repeat-until kondisi Pengulangan di evakuasi di akhir.
4. if then else
If berarti jika dan then berarti maka. Jadi, if then else adalah suatu bentuk pengkondisian bilamana kondisi bernilai benar, aksi 1 akan dikerjakan, tapi jika tidak aksi 2 yang akan dikerjakan.
if kondisi then
aksi 1
else
aksi 2
Example:
if anak berbaju hijau then
acungkan jarinya
else if anak berbaju merah then
berdiri else
diam duduk ditempat
( terdapat kelemahan karena pemrogram tidak tahu kapan harus berhenti menulis, tidak tahu berapa kali pernyataan harus ditulis sampai dengan data yang dicari ditemukan).
Example Algoritma:
1. For-do
Program cetak banyak_Belajar yang rajin oce!
{ mencetak ‘ Belajar yang rajin oce!’ sebanyak 5 kali }
Deklarasi
i : integer ( pencacah Pengulangan )
Algoritma
for i <– 1 to 5 do ( ulangi sebanyak 5 kali )
Write ( ‘Belajar yang rajin oce!’ )
endfor
· Output
Belajar yang rajin oce!
Belajar yang rajin oce!
Belajar yang rajin oce!
Belajar yang rajin oce!
Belajar yang rajin oce!
2. While do
Program cetak banyak_Belajar yang rajin oce!
{ mencetak ‘Belajar yang rajin oce!’ sebanyak 5 kali }
Deklarasi
i : integer ( pencacah Pengulangan )
Algoritma
i <– 1
While i 5 do ( ulangi sebanyak 5 kali )
write ( ‘Belajar yang rajin oce’ )
i <– i + 1
end While
· output
Belajar yang rajin oce!
Belajar yang rajin oce!
Belajar yang rajin oce!
Belajar yang rajin oce!
Belajar yang rajin oce!
3. Repeat - until
Program cetak banyak_Belajar yang rajin oce!
{ mencetak ‘ Belajar yang rajin oce!’ sebanyak 5 kali }
Deklarasi
i : integer ( pencacah Pengulangan )
Algoritma
i <– 1
repeat ( ulangi sebanyak 5 kali )
write ( ‘Belajar yang rajin oce!’ )
i <– i + 1
until i 5
· output
Belajar yang rajin oce!
Belajar yang rajin oce!
Belajar yang rajin oce!
Belajar yang rajin oce!
Belajar yang rajin oce!
While atau repeat ekivalen, tetapi pada beberapa masalah pemilihan keduanya bergantung pada natural dari persoalan. Didalam repeat, kondisi Pengulangan diperiksa pada akhir Pengulangan, jadi instruksi didalam badan Pengulangan diperiksa pada akhir Pengulangan. Sedangkan, pada while kondisi Pengulangan diperiksa awal, jadi instruksi didalam badan Pengulangan hanya dapat dilaksanakan bila pengetesan kondisi menghasilkan nilai true, jadi jika Pengulangan pertama kali bernilai false maka badan pangulangan mungkin.
Deklarasi
Bagian deklarasi digunakan bila didalam program menggunakan pengenal (identifier) yang dapat berupa label, konstanta, tipe, variable, prosedur dan fungsi.
Deklarasi Konstanta
Definisi konstanta diawali dengan kata cadangan Const diikuti oleh kumpulan identifier
yang diberi suatu nilai konstanta. Data konstanta nilainya sudah ditentukan dan pasti,
tidak dapat dirubah didalam program.
Deklarasi Variabel
Variabel adalah identifier yang berisi data yang dapat diubah-ubah nilainya didalam
program. Menggunakan kata cadangan Var sebagai judul didalam bagian deklarasi
variable dan diikuti oleh satu atau lebih identifier yang dipisahkan koma, diikuti dengan
titik dua dan tipe dari datanya diakhiri dengan titik koma.
Deklarasi Tipe
Pascal menyediakan beberapa macam tipe data, yaitu :
1. tipe data sederhana, terdiri dari :
- Tipe data standar : integer, real, char, string, Boolean.
- Tipe data didefinisikan pemakai : enumerated atau scalar, subrange
3. Tipe data penunjuk
Deklarasi Label
Jika program menggunakan statement Goto untuk meloncat ke suatu statement yang
tertentu, maka dibutuhkan suatu label pada statement yang dituju dan label tersebut harus
di deklarasikan terlebih dahulu pada bagian deklarasi. Menggunakan kata cadangan
Label diikuti oleh kumpulan identifier label dengan dipisahkan oleh koma dan diakhiri
dengan titik koma.
Deklarasi Prosedur
Prosedur merupakan bagian yang terpisah dari program dan dapat diaktifkan dimanapun
didalam program. Prosedur dibuat sendiri bilamana program akan dibagi-bagi menjadi
beberapa blok-blok modul. Prosedur dibuat didalam program dengan cara
mendeklarasikannya dibagian deklarasi prosedur. Menggunakan kata cadangan
Procedure.
Deklarasi Fungsi
Fungsi juga merupakan bagian program yang terpisah mirip dengan prosedur, tetapi ada
beberapa perbedaannya. Kata cadangan yang digunakan Function.