Jumat, 29 Januari 2016

Procedure,Fungsi Dan Function




Perbedaan Prosedur dan Fungsi dalam Algoritma Pemrograman

Sebelum mengetahui perbedaan antara Prosedur dan Fungsi, kita lihat terlebih dahulu pengertian dari prosedur dan fungsi. Inilah pengertian dari Prosedur dan Fungsi pada Algoritma Pemrograman.

 

  1. Prosedur
Prosedur adalah suatu program terpisah dalam blok sendiri yang berfungsi sebagai subprogram (program bagian). Diawali dengan kata cadangan “Procedure” didalam bagian deklarasi prosedur. Procedure biasanya bersifat suatu aktifitas seperti menghitung luas, meghitung faktorial, mencari nilai maksimum/minimum, dan sebagainya. Prosedur banyak digunakan pada program yang terstruktur karena :
  1. Merupakan penerapan konsep program Modular, yaitu memecah-mecah program yang rumit menjadi program-program bagian yang lebih sederhana dalam bentuk sebagai prosedur-prosedur.
  1. Untuk hal-hal yang sering dilakukan berulang-ulang, cukup dituliskan sekali saja dalam prosedur dan dapat dipanggil atau dipergunakan sewaktu-waktu bila diperlukan.
  2. Membuat kode program lebih mudah dibaca.
  3. Dapat digunakan untuk menyembunyikan detil program

Prosedur memiliki ciri-ciri sebagai berikut ini :
  • Hanya memiliki satu fungsi tujuan (logical inherent). Sebuah prosedur sebaiknya hanya memiliki satu fungsi tujuan dan tidak bercampur dengan tujuan lain. Hal ini untuk membuat prosedur lebih focus.
  • Berukuran kecil (small size). Yang dimaksud ukuran disini adalah panjang algoritma atau panjang kode program pada suatu prosedur. Ukuran kecil akan mudah dibaca maupun diperbaiki.
  • Tidak tergantung pada prosedur lain (independent). Sebuah prosedur harusnya bersifat mandiri, artinya sebuah prosedur dapat berjalan dan diuji tanpa menunggu bagian lainnya selesai. Selain itu variable yang digunakan dalam prosedur tidak mempengaruhi variabel yang digunakan pada bagian lain di keseluruhan program.
  1. Fungsi
Fungsi sama seperti halnya dengan prosedur, namun tetap ada perbedaannya yaitu fungsi mempunyai output dengan tipe variabel yang kita tentukan. Berbeda dengan procedure yang bisa dengan tidak menggunakan parameter, fungsi harus menggunakan parameter dalam penggunaannya. Fungsi juga mempunyai Output dengan tipe variabel yang kita tentukan. Dan cara pemanggilan variabel ada 2 macam dalam pascal, yaitu :
o Mengoutputkan nilai dari fungsi tersebut Contoh :                                                         Writln  (namafungsi(parameter));
o Dengan assignment Variabel1 := namafungsi(parameter);


     Demikianlah pengertian Prosedur dan Fungsi, setelah mengetahui pengertian dari prosedur dan fungsi kita dapat melihat perbedaan antara keduanya yaitu :
No Prosedur Fungsi
1. Nilai yang dikirimkan balik terdapat pada parameter yang dikirimkan secara acuan. Nilai yang dikirimkan balik terdapat pada nama fungsinya.
2. Nama prosedur tidak dapat digunakan langsung. Karena nilai balik berada di nama fungsi tersebut, maka fungsi tersebut dapat langsung digunakan untuk dicetak hasilnya.
3. Yang   dapat langsung digunakan adalah parameternya yang mengandung nilai balik. Nilai fungsi dapat juga langsung dipindahkan ke pengenal variabel yang lainnya.
4. Tidak memiliki nilai balik Memiliki nilai balik (return value)

  • Bentuk umum prosedur adalah sebagai berikut:
Void NamaProsedur (DaftarParameter)
{
/*Code atau Badan Prosedur*/
}


  • Bentuk umum Fungsi adalah sebagai berikut:
TipeData NamaFungsi (DaftarParameter){
/*Code atau Badan Prosedur*/
return nilaireturn;
}

Manfaat dalam menggunakan Prosedur dan Fungsi

  • Dapat memecahkan program yang rumit dan besar menjadi program-program yang lebih sederhana atau kecil.
  • Untuk aktivitas yang dilakukan lebih dari satu kali / sering dilakukan berulang-ulang.
  • Meningkatkan kemampuan untuk menganalisis kesalahan, jika terjadi suatu kesalahan kita tinggal mencari fungsi atau prosedur yang bersangkutan saja dan tak perlu di seluruh program.

    PROCEDURE DAN FUNCTION PADA PASCAL

    Sebagaimana kita tau bahwa fungsi procedure dan function adalah untuk mencegah program menjadi modul-modul program yang berguna untuk menghindari penulisan coding program yang sama secara berulang-ulang. Modul-modul ini nantinya bisa dipanggil beberapa kali.

    Aturan penulisan :

    Procedure nama_procedure_kalian;
    Var variabel kalian;
    Begin;
    (isi program)
    End.

    Contoh :
    Program Luas_Segitiga_Lingkaran;
    uses crt;
    var pilih : integer;

        procedure Garis;
        begin
        writeln('--------------------');
        end;

        procedure Segitiga;
        var
        alas,tinggi : integer;
        luas : real;
        begin clrscr;
        writeln('------------------------');
        writeln('        SEGITIGA        ');
        writeln('------------------------');
        write('MASUKAN NILAI TINGGI : '); readln(tinggi);
        write('MASUKAN NILAI ALAS   : '); readln(alas);
        luas := 1/2*alas*tinggi;
        writeln('JADI LUASNYA ADALAH  : ' ,luas:4:1);
        readln;
        end;

        procedure Lingkaran;
        var
        r : integer;
        luas : real;
        const
        phi = 3.14;
        begin clrscr;
        writeln('------------------------');
        writeln('       LINGKARAN        ');
        writeln('------------------------');
        Write('MASUKAN NILAI JARI JARI : '); readln(r);
        luas:= phi*r*r;
        Writeln('JADI LUASNYA ADALAH     : ' ,luas:4:1);
        readln;
        end;


    BEGIN clrscr;
    garis;
    writeln('      MENGHITUNG LUAS      ');
    garis;
    writeln('1. SEGITIGA');
    writeln('2. LINGKARAN');
    writeln('3. KELUAR');
    garis;
    write('PILIH SALAH SATU (NO) : '); readln(pilih);

    if pilih=1 then Segitiga;
    if pilih=2 then Lingkaran
    else Exit;
    readln;
    END.

Tidak ada komentar:

Posting Komentar