Headlines News :
Home » » Prosedur dan Fungsi dalam Bahasa C++

Prosedur dan Fungsi dalam Bahasa C++

Written By Unknown on Jumat, 20 Desember 2013 | 19.03


Prosedur dan Fungsi dalam Bahasa C++
 Fungsi/prosedur adalah suatu bagian dari program yang digunakan untuk menjalankan suatu tugas tertentu dan letaknya terpisah dari bagian program yang menggunakannya. Suatu fungsi/prosedur dipanggil/digunakan dengan tujuan khusus, yaitu untuk mengerjakan suatu tugas tertentu, dimana tugas-tugas tersebut dapat berupa tugas input (menyimpan hasil ke dalam suatu array atau file) dan/atau output (menampilkan hasil di layar monitor) ataupun melakukan penyeleksian dan perhitungan. Suatu Fungsi/prosedur dapat memberikan suatu hasil balik ke program yang memanggilnya atau tidak meberikan hasil balik sama sekali. Hasil balik ini biasanya berupa suatu nilai yang dibutuhkan oleh bagian program yang memanggilnya.

Perbedaan utama fungsi dan prosedur
Ø  Fungsi hanya akan mengembalikan sebuah nilai ke bagian yang memanggilnya atau dengan kata lain sebuah fungsi hanya mengerjakan satu tugas saja,
Ø  sedangkan prosedur akan mengembalikan satu atau lebih nilai atau bahkan tidak mengembalikan nilai sama sekali ke bagian yang memanggilnya, atau
dengan kata lain sebuah prosedur dapat mengerjakan lebih dari satu tugas

Kelebihan program yang menggunakan fungsi tambahan selain fungsi utamanya diantaranya
1. Program menjadi lebih mudah dimengerti
Hal ini disebabkan karena proses penyelesaian untuk suatu masalah dipecah menjadi beberapa sub masalah/ pemecahan masalah tersebut ke dalam bentuk fungsi yang lebih sederhana akan membuat program menjadi lebih mudah dimengerti dibandingkan jika semuanya  dilakukan dalam fungsi utama saja.

2. Pengaruh antar bagian menjadi lebih kecil (Program menjadi lebih independen)
Karena suatu sub masalah diselesaikan dalam fungsi/prosedur yang terpisah maka (seharusnya) hal tersebut tidak akan mempengaruhi perintah yang ada pada fungsi/prosedur yang lain. Tidak seperti jika dikerjakan dalam fungsi utama atau bagian utama, sebuah perintah tertentu pada suatu baris program memungkinkan akan memberi pengaruh yang tidak dikehendaki ke perintah pada baris program yang lain. Dalam pembuatan sebuah fungsi/prosedur yang baik, perintah-perintah yang ada dalam suatu fungsi/prosedur seharusnya tidak mempengaruhi perintah-perintah yang ada di fungsi/prosedur yang lain (independen)

3. Dapat dipakai kembali
Fungsi/prosedur yang pernah dibuat dapat dipakai kembali di program yang lain untuk menyelesaikan masalah yang berbeda, sehingga pada pembuatan program berikutnya akan menjadi semakin mudah karena kita sudah mempunyai beberapa fungsi/prosedur tambahan yang dapat dimanfaatkan (contohnya Library header dalam bahasa C/C++). Hal ini akan membantu seorang programmer untuk menyelesaiakan suatu program dengan waktu yang lebih singkat.

4. Lebih efisien dan ukuran program menjadi lebih kecil
Dengan adanya fungsi/prosedur penulisan kumpulan baris program yang sama di tempat yang berbeda dapat dikurangi atau dapat ditulis satu kali saja dalam fungsi/prosedur, jika bagian program membutuhkan perintah tersebut tinggal memanggil fungsi/prosedur tersebut. Sehingga program yang dibuat menjadi lebih efisien dan ukurannyapun menjadi lebih kecil.

5. Lebih konsisten
Penulisan kumpulan baris program yang sama secara berulang-ulang ditempat yang berbeda akan mengakibatkan program menjadi tidak konsisten, karena jika terdapat kesalahan dalam kumpulan baris program tersebut maka programmer harus mengingat kembali posisi kumpulan baris program tersebut. Sebaliknya jika kumpulan baris program yang sama dibuat dalam bentuk fungsi/prosedur maka jika ada kesalahan perintah, programmer tinggal memperbaikinya pada fungsi/prosedur tersebut

1.Function / Fungsi.
        Fungsi/function adalah suatu kumpulan instruksi/perintah/
program yang dikelompokkan menjadi satu, letaknya terpisah dari program yang menggunakan fungsi tersebut, memiliki nama tertentu yang unik, dan digunakan untuk mengerjakan suatu tujuan tertentu. Dalam bahasa pemrograman lain fungsi dapat disebut sebagai subrutin (basic, VB) atau procedure (pascal, Delphi)

Keuntungan Fungsi
1. Dapat melakukan pendekatan top-down dan divide-and-conquer:
2. Top-down: penelusuran
program mudah
3. Divide-and-conquer:
program besar dapat dipisah menjadi program-program kecil.
4. Kode
program menjadi lebih pendek, mudah dibaca, dan mudah dipahami
5.
Program dapat dikerjakan oleh beberapa orang sehingga program cepat selesai dengan      koordinasi yang mudah.
6. Mudah dalam mencari kesalahan-kesalahan karena alur logika jelas dan sederhana Kesalahan dapat dilokalisasi dalam suatu modul tertentu saja.
7. Modifikasi
program dapat dilakukan pada suatu modul tertentu saja tanpa mengganggu program keseluruhan
8. Fungsi – fungsi menjadikan
program mempunyai struktur yang jelas.
9. Dengan memisahkan langkah – langkah detail ke satu atau lebih fungsi – fungsi, maka fungsi utama (main) akan menjadi lebih pendek, jelas dan mudah dimengerti.
10. Fungsi -fungsi digunakan untuk menghindari penulisan
program yang sama yang ditulis secara berulang – ulang. Langkah – langkah tersebut dapat dituliskan sekali saja secara terpisah dalam bentuk fungsi. Selanjutnya bagian program yang membutuhkan langkah – langkah ini tidak perlu selalu menuliskannya, tidak cukup memanggil fungsi tersebut.
11. Mempermudah dokumentasi.
12. Reusability: Suatu fungsi dapat digunakan kembali oleh
program atau fungsi lain


Sifat-sifat fungsi
1. Nilai fan-in tinggi, artinya semakin sering suatu modul dipanggil oleh pengguna semakin tinggi nilai fan-in
2. Nilai Fan-out rendah, artinya semakin spesifik fungsi suatu modul akan semakin rendah nilai fan-out
3. Memiliki Self-contained tinggi: artinya kemampuan untuk memenuhi kebutuhannnya sendiri


Kategori fungsi dalam C
Ø  Standard Library Function . Yaitu fungsi-fungsi yang telah disediakan oleh C dalam file-file header atau librarynya. Misalnya: clrscr(), printf(), getch(). Untuk function ini kita harus mendeklarasikan terlebih dahulu library yang akan digunakan, yaitu dengan menggunakan preprosesor direktif. Misalnya: #include
Ø  Programmer - Defined Function  Adalah function yang dibuat oleh programmer sendiri.Function ini memiliki nama tertentu yang unik dalam program, letaknya terpisah dari program utama,dan bisa dijadikan satu ke dalam suatu library buatan programmer itu sendiri yang kemudian juga di-include-kan jika ingin menggunakannya.

Perancangan Fungsi
Dalam membuat fungsi, perlu diperhatikan:
1. Data yang diperlukan sebagai inputan
2. Informasi apa yang harus diberikan oleh fungsi yang dibuat ke pemanggilnya
3.
Algoritmaapa yang harus digunakan untuk mengolah data menjadi informasi.

Contoh  fungsi
Contoh 1

#include<stdio.h>
Int HITUNG(int A, int B);
          
Void main()
      {
          int A,B,T;
          A=5;  B=2;  T=0;
          T = HITUNG (A,B);
          Printf(“\n %d”,T);
       }

Int HITUNG(int A, int B)
        {  int T;
           A=A*2;
           B=B*2;
           T=A+B;
           return(T);
         }
 
Contoh 2
#include<stdio.h>
Void main()
{
   printf(“Jakarta”);
}
Program ini tidak menggunakan function lain selain main function.

Struktur Fungsi
Deklarasi function (function prototype/ declaration)Terdiri dari:
1.      Judul fungsi
2.      Tipe data yang akan dikembalikan/void
3.       Tidak ada kode implementasi function tersebut Bentuk umum: tipe_data|void nama_fungsi([arguman 1, argument 2,....]);

     Deklarasi fungsi
Ø  Deklarasi fungsi diakhiri dengan titik koma .
Ø  Tipe_data dapat berupa segala tipe data yang dikenal C ataupun tipe data buatan,    namun tipe data dapat juga tidak ada dan digantikan dengan void yang berarti fungsi tersebut tidak mengembalikan nilai apapun.
Ø  Nama fungsi adalah nama yang unik.
Ø  Argumen dapat ada atau tidak (opsional) yang digunakan untuk menerima argumen/parameter. Antar argumen-argumen dipisahkan dengan menggunakan tanda koma.
Ø  Suatu fungsi perlu dideklarasikan sebelum digunakan.
Ø  Untuk alasan dokumentasi program yang baik, sebaiknya semua fungsi yang digunakan  dideklarasikan terlebih dahulu.
Ø  Deklarasi fungsi ditulis sebelum fungsi tersebut digunakan

Jenis fungsi dalam C
 Fungsi Void
Fungsi yang void sering disebut juga prosedur . Disebut void karena fungsi tersebut tidak mengembalikan suatu nilai keluaran yang didapat dari hasil proses fungsi tersebut.
Ciri:
1. Tidak adanya keyword return.
2. tidak adanya
tipe data di dalam deklarasi fungsi.
3. menggunakan keyword void.
4. Tidak dapat langsung ditampilkan hasilnya
5. Tidak memiliki nilai kembalian fungsi

Contoh void :
void tampilkan_jmlh(int a,int b)
{
    int jmlh;
    jmlh=a+b;
    printf(“%d”,jmlh);
}

Fungsi non-void
Fungsi non-void disebut juga function. Disebut non-void karena mengembalikan nilai kembalian yang berasal dari keluaran hasil proses function tersebut .
Ciri:
1. ada keyword return
2. ada
tipe data yang mengawali fungsi
3. tidak ada keyword void
4. Memiliki nilai kembalian . Dapat dianalogikan sebagai suatu
variabel yang memiliki tipe data tertentu sehingga dapat langsung ditampilkan hasilnya.

Contoh non void
int jumlah(int a, int b)
{
    int jmlh;
    jmlh=a+b;
    return jmlh;
}
             Keyword void
Keyword void juga digunakan jika suatu function tidak mengandung suatu parameter apapun
 The main Function
. function main() dibutuhkan agar
program C dapat dieksekusi!
. Tanpa function main,
program C dapat dicompile tapi tidak dapat dieksekusi (harus
dengan flag parameter -c, jika di UNIX) . Pada saat
program C dijalankan, makacompiler C pertama kali akan mencari function main() dan melaksanakan instruksi-instruksi yang ada di sana.


Function main, sering dideklarasikan dalam 2 bentuk:
   int main();
Berarti di dalam function main tersebut harus terdapat keyword return di bagian akhir fungsi dan mengembalikan nilai bertipe data int. Mengapa hasil return harus bertipe int juga? karenatipe data yang mendahului fungsi main() diatas dideklarasikan int. Tujuan nilai kembalian berupa integer adalahuntuk mengetahui status eksekusi program. jika “terminated successfully” (EXIT_SUCCESS) maka, akan dikembalikan status 0, sedangkan jika “terminated unsuccessfully” (EXIT_FAILURE) akan dikembalikan nilai status tidak 0, biasanya bernilai 1. Biasanya dipakai di lingkungan UNIX void main(). Berarti berupa function yang void sehingga tidak mengembalikan nilai status program sehingga nilai status program tidak bisa diketahui. Biasanya dipakai pada program C di lingkungan Windows Bentuk pemanggilan fungsi di C. Pada dasarnya fungsi dapat memanggil fungsi lain, bahkan fungsi dapat memanggil dirinya sendiri (rekursif)



   void main();
Berarti berupa function yang void sehingga tidak mengembalikan nilai status program , sehingga nilai status program tidak bisa diketahui . Bisanya dipakai pada program C di lingkungan windows.

2. Prosedur
Prosedur sedikit berbeda dengan fungsi, yaitu apabila pada fungsi dapat mengembalikan nilai return, pada prosedur ini nilai tidak dikembalikan. Nilai hanya akan diproses dan kembali pada keadaan awal saat keluar dari prosedur.
Prosedur dalam penulisannya memiliki struktur, di antaranya :
  • judul (berisi nama prosedur dan deklarasi parameter jika ada)
  • deklarasi 
  • deskripsi (badan prosedur)
Untuk dapat menggunakan prosedur tersebut perlu adanya pemanggilan prosedur sama seperti pemanggilan fungsi. Untuk lebih jelasnya kita lihat potongan program berikut :
                             void hitungluaslingkaran()
                              {
                                   float phi;
                                   float r;
                                   luas=phi*r*r;
                                   printf("luas lingkaran : %0.2f\n",luas);
                              }
Pada prosedur di atas kita mencari luas lingkaran dengan menggunakan rumus phi*r*r dengan deklarasi lokal berupa phi dan r.

semoga bermanfaat bagi kita semua khususnya para pembaca,.. amiennn ..
jangan lupa commentnya +join sob. . 
http://sahrulgun.blogspot.com
Share this article :

0 komentar:

Speak up your mind

Tell us what you're thinking... !

 
Support : Creating Website | Sahrul-Teknik | Template
Proudly powered by Blogger
Copyright © 2011. MEDIA BELAJAR - All Rights Reserved
Template Design by Creating Website Published by Sahrul-Teknik