Skip to main content

Subrutin (Procedure Dan Function) Pada Pascal


Di setiap bahasa pemrograman pasti mempunyai yang namanya sub rutin yaitu sub program atau bagian terkecil dari suatu program yang digunakan untuk keperluan tertentu. Hanya saja masing-masing bahasa pemrograman mungkin menyebutnya dengan istilah/cara yang berbeda. Dengan menggunakan procedure dan function pembuatan program yang besar dan komplek menjadi lebih mudah.

Sub rutin dibagi menjadi dua macam, yaitu Procedure dan Function. Yang membedakan antara procedure dengan function adalah jika procedure tidak menghasilkan/mengembalikan suatu nilai, akan tetapi function mengembalikan suatu nilai.
Sebagai contoh kita membuat program yang digunakan untuk mencetak identitas sebanyak 3 kali (di Pascal).

   program tanpaprocedure;
   begin
      write('Nama : Untung Subagyo');
      write('Alamat Asal : Kebumen');
      write('Alamat Tinggal: Yogyakarta');
      write('Nama : Untung Subagyo');
      write('Alamat Asal : Kebumen');
      write('Alamat Tinggal: Yogyakarta');
      write('Nama : Untung Subagyo');
      write('Alamat Asal : Kebumen');
      write('Alamat Tinggal: Yogyakarta');
   end.

tapi kalo menggunakan procedure

   program pakeprocedure;
   procedure identitas;
   begin
      write('Nama : Untung Subagyo'); 
      write('Alamat Asal : Kebumen');
      write('Alamat Tinggal: Yogyakarta');
   end;
   begin
      identitas;
      identitas;
      identitas;
   end.

Ketika kita menggunakan procedure, dan kita membutuhkan suatu pekerjaan berulang kali, maka kita tinggal memanggil procedure tersebut. Pada contoh program di atas, tidak ada nilai yang dikembalikan ke procedure. Biasanya procedure digunakan untuk melakukan pekerjaan-pekerjaan yang tidak menghasilkan nilai, misalkan untuk menampilkan sesuatu berulang kali. 
Di dalam pascal sudah tersedia beberapa procedure. Sebagai contoh, write adalah procedure untuk menampilkan tulisan di layar. clrscr adalah procedure yang digunakan untuk membersihkan layar. Jika kita sering melakukan pekerjaan yang sama berulang kali, dan pekerjaan tersebut membutuhkan sekumpulan perintah/statement, maka sebaiknya kita membuat procedure untuk keperluan tersebut.
Sama seperti procedure, function merupakan sekumpulan perintah yang digunakan untuk keperluan tertentu, yang mungkin pekerjaan tersebut sering kita lakukan. Hanya saja, function menghasilkan/mengembalikan suatu nilai. Biasanya function digunakan untuk perhitungan. 
Nilai yang dihasilkan bisa disimpan ke suatu penampung terlebih dahulu (misalnya variabel), atau bisa juga langsung dicetak. Di dalam pascal terdapat beberapa function yang sudah tersedia, seperti readln digunakan untuk meminta masukan dari user melalui keyboard.
Sebagai contoh kita menginginkan untuk menghitung luas segitiga beberapa kali:
   
   PROGRAM TanpaFunction;
   var p, l : integer;
   BEGIN
      alas := 5;
      tinggi := 3;
      writeln('Luas Segitiga = ',alas*tinggi*0.5);
      alas := 2;
      tinggi := 7;
      writeln('Luas Segitiga = ',alas*tinggi*0.5);
      alas := 4;
      tinggi := 6;
      writeln('Luas Segitiga = ',alas*tinggi*0.5);
   END.

Jika menggunakan function

   PROGRAM DenganFunction;
   FUNCTION luas(alas,tinggi : integer):single;
   BEGIN
      luas := 0.5 * alas * tinggi;
   END;
   var p, l : integer;
   BEGIN
      alas := 5;
      tinggi := 3;
      writeln('Luas Segitiga = ',luas(alas,tinggi));
      alas := 2;
      tinggi := 7;
      writeln('Luas Segitiga = ',luas(alas,tinggi));
      alas := 4;
      tinggi := 6;
      writeln('Luas Segitiga = ',luas(alas,tinggi));
   END.

Pada contoh di atas, function menghasilkan nilai luas segitiga yang langsung dicetak.

Silahkan anda simpulkan apa kegunaan dari procedure dan function.

SEKIAN......

Comments

Popular posts from this blog

Program Menghitung Luas Segitiga dengan Pascal

  Oke sudah lama sekali saya tidak menulis di blog ini , maklum banyak kegiatan di luar salah satunya tugas kuliah yang semakin menumpuk akibat sering ditunda-tunda. Dan kali ini saya akan memberikan tutorial tentang cara membuat program untuk menghitung luas segitiga siku-siku dengan menggunakan bahasa pemrograman turbo pascal sehingga kita tidak perlu repot-repot lagi menghitung secara manual, cukup dengan memasukkan data dan tunggu hasilnya.  Segitiga Siku siku  langkah-langkahnya sebagai berikut: 1. Buka Turbo pascal atau Tpw , masih bingung antara pascal dengan      TPW?    santai, sebenrnya keduanya merupakan sebuah software yang sama ,    bedanya TPW ialah Turbo pascal yang digunakan untuk komputer yang    memiliki sistem operasi windows. 2. Masukkan kode-kode di bawah ini..    program hitungsegitiga;    uses wincrt;    var a,b,c,d,e:real;    begin  ...

Pemakaian Gotoxy Pada Program Pascal

Suatu informasi yang terdapat dilayar monitor tentu harus enak dilihat dan rapi. Jika melihat hasil program Menampilkan Lebih 1 Record Pada Pascal kurang menarik, hasilnya masih berantakan. Bagaimana membuat tampilan menjadi lebih tersusun? Untuk menyelesaikan hal ini, kita wajib menggunakan gotoxy. Gotoxy digunakan untuk menuju ke suatu koordinat tertentu pada layar monitor. Dengan menggunakan gotoxy, maka tampilan di layar akan lebih tersusun/rapi, sehingga lebih enak dilihat. Berikut pemakaian gotoxy pada program pascal. uses crt ; type     mahasiswa = record ;     nim    : string[8] ;     nama   : string[30] ;     jenjang: string[2] ;     prodi  : string[30] ;     Nilai  : byte ;     end; var    recMhs : array[1..30] of mahasiswa ;    ket    : string[10];    i      : byte ; Begin    ...

Latihan Dan Soal Untuk Program Penyeleksian Kondisi Pascal (Bagian 3)

Sebelumnya saya sudah posting mengenai Latihan Dan Soal Untuk Program Penyeleksi Kondisi Pascal (Bagian 2) Kali ini saya akan menlanjutkan beberapa latihan - latihan lagi. Langsung saja berikut latihan-latihannya : 1. Buatlah  program untuk menghitung gaji Karyawan pada PT. XYZ jika yang diinput adalah namadan Kode jabatan dan mengeluarkan jabatan dan perincian gajinya ditetapkan berdasarkan jabatan dengan ketentuan sebagai berikut: Kode Jabatan Jabatan Gaji Pokok Tunj. Transport Tunj. Makan DR Direktur Rp 3000000 Rp 850000 Rp 500000 WD Wakil Direktur Rp 2500000 Rp 800000 Rp 500000 MN Manajer Rp 2000000 Rp 800000 Rp 450000 AS Asisten Rp 1500000 Rp 700000 Rp 400000 KW Karyawan Rp 1000000 Rp 500000 Rp 300000 Jawab  :    program PT_XYZ;    uses crt;    var      kj:String;      GP,TT,TM:longint;      Total:longint; ...