Function C++

Fungsi adalah suatu bagian dari program yang dirancang untuk melaksanakan

tugas tertentu dan letaknya dipisahkan dari program yang menggunakannya.  Elemen

utama dari program bahasa C berupa fungsi-fungsi, dalam hal ini program dari bahasa C, dibentuk dari kumpulan fungsi pustaka (standar) dan fungsi yang dibuat sendiri oleh

pemrogram.  Fungsi banyak digunakan pada program C dengan tujuan :

a.     Program menjadi terstruktur, sehingga mudah dipahami dan mudah 

       dikembangkan. dengan memisahkan langkah-langkah detail ke satu atau

       lebih fungsi-fungsi, maka  fungsi utama (main()) menjadi lebih pendek,

       jelas dan mudah dimengerti.

b.    Dapat  mengurangi pengulangan (duplikasi) kode.  Langkah-langkah

      program yang sama dan dipakai berulang-ulang di program dapat dituliskan

      sekali saja secaraterpisah dalam bentuk fungsi-fungsi.  Selanjutnya bagian

      program yang membutuhkan langkah-langkah ini tidak perlu selalu

      menuliskannya, tetapi cukup memanggil fungsi-fungsi tersebut.

Fungsi standar C yang mengemban tugas khusus contohnya adalah ;

   printf() , yaitu untuk menampilkan informasi atau data ke layar.

   scanf() , yaitu untuk membaca kode tombol yang diinputkan.

Pada umumnya fungsi memerlukan nilai masukan atau parameter yang disebut sebagai argumen. Nilai masukan ini akan diolah oleh fungsi.  Hasil akhir fungsi berupa sebuah nilai (disebut sebagai return value atau nilai keluaran fungsi)

Sebuah fungsi sederhana mempunyai bentuk penulisan sebagai berikut :

nama_fungsi(argumen)
{
… pernyataan / perintah;
… pernyataan / perintah; 
… pernyataan / perintah;
}
Keterangan:

-     Nama fungsi, boleh dituliskan secara bebas dengan ketentuan, tidak
menggunakan spasi dan nama-nama fungsi yang mempunyai arti
sendiri.
-     Argumen, diletakan diantara tanda kurung “( )” yang terletak
dibelakang nama fungsi. Argumen boleh diisi dengan suatu data atau
dibiarkan kosong.
-     Pernyataan / perintah, diletakan diantara tanda kurung ‘{ }’.

Pada pemanggilan sebuah fungsi, cukup dengan menuliskan nama
fungsinya.

Sebuah fungsi yang sederhana bisa saja tidak mengandung parameter sama sekali dan tentu saja untuk keadaan ini deklarasi parameter juga tidak ada. Contoh  

int inisialisasi()
{
return(0);
}

Pada fungsi di atas :

   tipe keluaran fungsi tidak disebutkan, berarti keluaran fungsi ber tipe int.

   inisialisasi adalah nama fungsi

   Tanda () sesudah nama fungsi menyatakan bahwa fungsi tak memiliki     

      parameter.

   Tanda { dan } adalah awal dan akhir fungsi

   return(0) merupakan sebuah pernyataan dalam tubuh fungsi.

 

Terdapat dua macam para parameter fungsi, yaitu :


•      Parameter formal  adalah        variabel yang terdapat pada daftar
parameter yang berada didalam definisi fungsi
•       Parameter Aktual adalah variabel yang digunakan pada pemanggilan
suatu fungsi.
parameter fungsi

Pemanggilan dengan nilai ( Call by Value ) 
Pada pemanggilan dengan nilai yaitu nilai dari parameter aktual akan
dimasukkan keparameter formal. Dengan cara ini nilai parameter aktual
tidak bisa berubah, walaupun nilai dari parameter formal berubah. Berikut
contoh pemanggilan dengan nilai dapat dilihat pada contoh berikut
/* ------------------------ */
/* Penggunaan Call By Value */
/* Program Tambah Nilai     */
/* ------------------------ */
#include<conio.h>
#include<stdio.h>
#include<iostream.h>
tambah(int m, int n);
main()
{
   int a, b;
   a = 5;
   b = 9;
   clrscr();
   cout<<"Nilai Sebelum Fungsi Digunakan ";
   cout<<"\na = "<<a<<" b = "<<b;
   tambah(a,b);
   cout<<"\nNilai Setelah Fungsi Digunakan";
   cout<<"\na = "<<a<<" b = "<<b;
   getch();
}

tambah(int m, int n)
{
  m+=5;
  n+=7;
  cout<<"\n\nNilai di dalam Fungsi Tambah()";
  cout<<"\nm = "<<m<<" n = "<<n;
  cout<<end;
}
Hasilnya sebagai berikut
by value
Pemanggilan dengan referensi ( Call by reference )
Pemanggilan dengan reference merupakan pemanggilan alamat suatu
variabel didalam fungsi. Cara ini dapat dipakai untuk mengubah isi suatu
variabel yang diluar dari fungsi dengan melaksanakan pengubahan nilai
dari suatu variabel dilakukan didalam fungsi.
/* ---------------------------- */
/* Penggunaan Call By Reference */
/* Program Tambah Nilai         */ 
/* ---------------------------- */
#include<conio.h>
#include<stdio.h>
#include<iostream.h>
tambah(int *c, int *d);
main()
{
   int a, b;
   a = 4;
   b = 6;
   clrscr();
   cout<<"Nilai Sebelum Pemanggilan Fungsi";
   cout<<"\na = "<<a<<" b = "<<b;
   tambah(&a,&b);
   cout<<endl;
   cout<<"\nNilai Setelah Pemanggilan Fungsi";
   cout<<"\na = "<<a<<" b = "<<b;
   getch();
}
tambah(int *c, int *d)
{
  *c+=7;
  *d+=5;
  cout<<endl;
  cout<<"\nNilai di Akhir Fungsi Tambah()";
  cout<<"\nc = "<<*c<<" d = "<<*d;
}

Hasilnya Sebagai Berikut
by reference


Pernyataan return()
Digunakan untuk mengirimkan nilai atau nilai dari suatu fungsi kepada
fungsi yang lain yang memanggilnya. Pernyataan        return() diikuti oleh
argumen yang berupa nilai yang akan dikirimkan. Contoh pemakaian
pernyataan return() dapat dilihat pada contoh berikut ;
/* -------------------------- */
/* Penggunaan Fungsi return() */
/* -------------------------- */
#include<conio.h>
#include<stdio.h>
#include<iostream.h>
tambah(int *c);   //prototype fungsi tambah
main()
{
   int a, b = 5;
   clrscr();
   a = tambah(&b);
   cout<<"Nilai Setelah Pemanggilan Fungsi adalah "<<a;
   getch();
tambah(int *c)   //fungsi tambah
{
 return(*c+=2);
}
}
Hasilnya sebagai berikut
by return
Download materi dari link berikut :