09 October 2009

Fungsi (Method)


Fungsi
     adalah suatu jenis pembagian program ke dalam bagian-bagian yang lebih kecil yang dinamakan subrutin ataupun subprogram. Yang mana pada Fungsi memiliki nilai balik ketika subrutin tersebut dipanggi. Beberapa tipe fungsi pada Fungsi berupa int, double, dan sebagainya.

Prosedur
     adalah jenis pembagian yang sama dengan Fungsi, hanya saja pada prosedur tidak menghasilkan nilai balik ketika subrutin dipanggil. Oleh karena itu prosedur sering juga disebut sebagai Fungsi tanpa nilai balik. Prosedur ditulis dengan bagian tipe fungsi berupa void (void berarti tanpa nilai balik).

Manfaat fungsi dalam pemrograman adalah :
    • Mempermudah pengelolaan atau pengembangan program mengingat setiap subrutin memiliki kode yang            relatif sedikit jika dibandingkan dengan kode program secara keseluruhan yang disusun tanpa melibatkan          subrutin.
    • Dapat digunakan untuk mengurangi jumlah kode akibat sejumlah kode yang sama digunakan beberapa kali        dalam program.
    • Menjadikan program lebih bersifat modular sehingga akan mudah dipahami dan dapat digunakan kembali,        baik untuk program itu sendiri maupun untuk program lain yang memiliki proses yang sama.

Implementasi fungsi dalam pemrograman :
      Dalam membuat fungsi kita harus mendefenisikan tipe data dari nilai yang akan dikembalikan.
      Bentuk umum dari fungsi adalah :

        tipe_data nama_fungsi(nilai_parameter1, nilai_parameter2, …);
       {
            statemen_yang_akan_dilakukan;
            …
            …
            return nilai_yang_akan_dikembalikan;
       }

Prototype function 
     adalah fungsi yang hampir sama dengan fungsi yang lain kecuali bahwa prototype function tidak ada statement fungsi yang biasanya dituliskan dalma kurung kawal, diakhiri dengan tanda semi colon, dan dalam argumen dituliskan tipe argumen, bersifat optional.
Fungsi :
untuk menjelaskan pada compiler mengenai
    • Tipe keluaran fungsi
    • Jumlah parameter
    • Tipe dari masing-masing parameter.
Bentuk umum :
    type name ( argument_type1, argument_type2, ...);


Nilai akhir fungsi adalah nilai yang keluar setelah fungsi dijalankan.

Implementasi dalam sebuah fungsi yang mengembalikan nilai rata-rata dari 3 buah data yang diberikan oleh user adalah

#include
#include

int a,b,c;

int main ()
{
  printf("Input 1 : ");
  scanf("%d",&a);
  printf("Input 2 : ");
  scanf("%d",&b);
  printf("Input 3 : ");
  scanf("%d",&c);

  int rata(int a, int b, int c);

  printf("Rata-rata : %d",rata(a,b,c));
  getch ();
}
int rata(int a,int b, int c)
{
  int rata=(a+b+c)/3;
}
 Parameter Formal  
adalah parameter yang dituliskan mengikuti pemanggilan prosedur.

Parameter Aktual
adalah parameter yang dideklarasikan mengikuti pendeklarasian program utama.

Cara melewatkan parameter ke dalam fungsi adalah :
a. Pemanggilan dengan nilai (call by value)
    Merupakan cara yang dipakai untuk seluruh fungsi buatan. Pemanggilan ini, nilai dari parameter actual akan       disalin ke parameter formal. Dengan cara ini, parameter actual tidak bias dirubah sekalipun nilai parameter        formal berubah.
b. Pemanggilan dengan referensi (call by reference)
    Merupakan upaya untuk melewatkan alamat dari suatu variable ke dalam fungsi.Cara ini dapat dipakai             untuk mengubah isi suatu variable di luar fungsi dengan pelaksanaan pengubahan dilakukan di dalam fungsi.

Variabel Globaladalah Variabel yang dikenal diseluruh daerah di dalam program, di dalam dan luar fungsi. Dideklarasikan di luar suatu blok statemen atau di luar fungsi-fungsi yang menggunakannya. 

Variabel Lokal
adalah Variabel yang hanya dikenal di daerah yang lokal saja, misalnya di dalam sebuah fungsi/prosedur tertentu saja dan tidak dikenal di daerah lainnya. Harus dideklarasikan di dalam blok yang bersangkutan dan variabel lokal akan dihapus dari memori bila proses sudah meninggalkan blok statemen letak variabel lokalnya.





Intan Web Developer

A Wife and PhD candidate to-be in National Taiwan University of Science and Technology. Dreamer, Writer, Traveller, and Tech Addict. Like to travel everywhere and experience anything.

No comments:

Post a Comment

Anda bisa memasukkan komentar tentang postingan di sini...Terima Kasih ^.^