WELCOME TO MY BLOG

Kamis, 04 April 2013

FUNCTION

FUNCTION

  • Fungsi  (Function)        merupakan sekumpulan           instruksi             yang membentuk  satu  unit  serta  memiliki nama.
  • Fungsi   digunakan   untuk   membantu organisasi  program  dan  mengurangi besar (size ) program.
Topik yang dibahas :
  • Deklarasi Definisi fungsi ØPrototipe fungsi ØArgumen fungsi ØDefault argumen fungsi
  • Return value
  • Function        overloading        (Trivial Polymor-phism)
  • Inline Function
  • Deklarasi dari Definisi Fungsi :
Syntax :  tipe Nama_Fungsi ( daftar_argumen )  {  blok pernyataan ;      }Atau  tipe Nama_Fungsi ( tipe var_1, tipe var_2, … )  {    blok_pernyataan;  };


dimana:
  • tipe -> tipe data dari return value ( int, float, double,  char, void, signed, unsigned, long,  short).
  • Nama_Fungsi  ->  nama fungsi sesuai aturan C++.
  • daftar_argumen -> variable input / output.
  • blok_pernyataan -> kumpulan instruksi.
Contoh :  float  Hitung ( float  Panjang, float Lebar )  {     float  Luas;  // Deklarasi variabel lokal  Luas = Panjang * Lebar;  return  Luas;  };atau  float  Hitung ( float  Panjang, float Lebar )  {    return   ( Panjang * Lebar );  };atauvoid  Hitung ( float  Panjang, float Lebar, float *Luas )
{
  *Luas = Panjang * Lebar ;
};


Prototipe Fungsi :
  • Prototipe   fungsi   adalah   deklarasi fungsi    yang  hanya  memiliki  tipe, nama_fungsi,   dan   daftar_argumen, tetapi tidak memiliki badan_fungsi.
  • Prototipe             fungsi             harus  dideklarasikan      sebelum      fungsi tersebut        dipanggil.        Biasanya prototipe      fungsi      dideklarasikan sebelum    main    program    (fungsi main()),     dan     definisi     fungsinya diletakkan setelah main program.
  • Manfaat     dari     prototipe     fungsi adalah      untuk      menjamin      tipe argumen    yang    dilewatkan    pada pemanggilan    fungsi    benar-benar sesuai.
  • Tanpa    adanya    prototipe    fungsi, amatlah   mudah   bagi   pemrogram untuk  melakukan  kesalahan  tanpa sengaja        dalam        melewatkan argumen.     Misalnya,     melewatkan argumen  bertipe  float  pada  fungsi yang    seharusnya    meminta    tipe data int.
  • Deklarasi Prototipe Fungsi :
  tipe Nama_Fungsi ( tipe var_1, tipe var_2, … );
atau
  tipe Nama_Fungsi ( tipe , tipe  , tipe,  … );
  • Contoh :
  void  Tampil ( float Panjang, float Lebar );
atau
  void   Tampil ( floatfloat );
#include<iostream.h>
#include<iomanip.h>
#include<conio.h>
  long kuadrat(long l);  // Prototipe fungsi
  void main()
  {
  clrscr();
  for(long bil = 200; bil<2000; bil+=200)
  cout<<setw(8)<<bil
         <<setw(8)<<kuadrat(bil)<<endl;
  }
  // Definisi Fungsi
  long kuadrat(long l)
  {
  return(l * l);
  }


Argumen (Function Parameter) :
  • Argumen    merupakan    data    yang dikirim  dari  program  ke  fungsi  dan sebaliknya.
  • Argumen       dipergunakan       untuk mengirim   /   menerima   data   yang akan diproses.
  • Ada      2      jenis      cara      untuk mengirimkan argumen yaitu:
  1. Passing by Value : nilai yang dikirim adalah nilai atau data yang akan di proses
  2. Passing by Reference  nilai yang di kirim adalah berupa nilai pointer (bukan data) yang me refer ke suatu data.


Inline Function :
  • Fungsi  ini  bermanfaat  menghemat memori    (mengabaikan    peletakan argumen-argumen     fungsi     dalam stack    pada    saat    pemanggilan fungsi),              dengan              cara menggabungkan   fungsi   ke   dalam program utama.
  • Inline   function   disarankan   dipakai pada  fungsi  yang  sering  dipanggil dan   ukurannya   kecil   (terdiri   dari satu atau dua pernyataan).
  • Pembuatan  Inline  function  tersebut dilakukan            dengan            cara menambahkan  keyword  inline    di depan  tipe    fungsi    pada    saat mendefinisikan fungsi.

Syntax :   inline tipe Nama_Fungsi ( argumen )
  {
  blok_pernyataan;   return Nilai;
  }
Contoh :   inline float Luas ( float Pj, float Lb )
  {  return  ( Pj * Lb );    }

Contoh Program C++ : #include <iostream.h> #include <conio.h> inline  int jumlah( int x, int y)
{   return  ( x + y);
} void main()
{  
  clrscr();   for(int i = 1; i<100; i++)
  cout<<i<<“.”<<jumlah(i,2*i)<<endl;
}


Tidak ada komentar:

Posting Komentar