Sebuah function berisi sejumlah pernyataan yang dikemas dalam sebuah nama. Nama ini selanjutnya dapat dipanggil beberapa kali di beberapa tempat dalam program. Tujuannya:
- memudahkan dalam mengembangkan program. Program dibagi menjadi beberapa subprogram kecil, sehingga hal ini menjadi kunci dalam pembuatan program terstruktur.
- menghemat ukuran program, karena beberapa perintah yang sama dan dijalankan beberapa kali dalam program dapat dijadikan satu kali saja dalam suatu function, kemudian function tersebut dapat dipanggil berulang kali.
Contoh Function I :
#include <iostream.h>
#include <conio.h>
void garis(); // prototype function
void main() // main function
{
clrscr();
garis(); // panggil function
cout << “NIM NAMA MAHASISWA” << endl;
garis(); // panggil function
cout << “M0197001 AMIR HAMZAH “ << endl;
cout << “M0197002 PAIMAN” << endl;
garis(); // panggil function
}
void garis() // detail function
{
int i;
for(i=0;i<=40;i++) {
cout << “-”;
}
cout << endl;
}
Contoh di atas menggambarkan bagaimana membuat function untuk membuat garis. Nama functionnya adalah garis. Untuk membuat suatu function, diperlukan suatu prototype dari function tersebut. Prototype function memiliki sintaks sbb:
returned_value_data_type nama_function(argumen);
Seperti halnya dalam Pascal, suatu function dapat mengembalikan (return) suatu nilai (value) yang tergantung tipe datanya. Tipe data value yang dikembalikan inilah yang dimaksud dengan returned_value_data_type. Sedangkan argumen merupakan parameter-parameter yang akan diolah dalam function tersebut. Argumen boleh ada boleh tidak, sesuai kebutuhan. Apabila parameter argumennya lebih dari satu, cara penulisannya sbb:
tipe_data param1, tipe_data param2, …
Contoh penulisan prototype function:
– double kuadrat(int x);
– float luas_segitiga(float alas, float tinggi);
– int jumlah_bil(int x, int y, int z);
Apabila suatu function tidak mengembalikan nilai, maka returned_value_data_type nya diisi void. Setelah prototype function dibuat, selanjutnya membuat function tersebut secara detail. Suatu function disebut juga subprogram, oleh karena itu strukturnya juga sama dengan struktur program utama. Pada contoh function garis() di atas, detail dari function tersebut adalah:
void garis() // detail function
{
int i;
for(i=0;i<=40;i++)
{
cout << “-”;
}
cout << endl;
}
Kalau diperhatikan, strukturnya sama dengan program utama main().
Contoh Function II:
#include <iostream.h>
#include <conio.h>
float luas(float alas, float tinggi);
void main()
{
clrscr();
a = 10.5;
t = 11;
cout << “HITUNG LUAS SEGITIGA” << endl;
cout << “Panjang alas : “ << a << endl;
cout << “Tinggi : “ << t << endl;
cout << “Luasnya : “ << luas(a,t) << endl;
}
float luas(float alas, float tinggi)
{
float luas_segitiga;
luas_segitiga = alas * tinggi * 0.5;
return luas_segitiga;
}
Detail function luas di atas dapat ditulis sbb:
float luas(float alas, float tinggi)
{
return (alas * tinggi * 0.5);
}
Perintah return adalah untuk mengembalikan hasil operasi di sebelah kanannya ke perintah pemanggilan function.
Fungsi dalam C merupakan sekumpulan code yang dibungkus ke dalam sebuah scope untuk menjalankan tugas tertentu. Fungsi memungkinkan kita untuk menghemat penulisan kode yang mana sering ditulis berulang-ulang, namun bisa dibungkus ke dalam sebuah fungsi dan kita tinggal memanggilnya saja. Fungsi membuat program lebih terstruktur dan efisien sehingga program tersebut mudah dipahami atau dibaca alur programnya.
Fungsi terbagi 2, ada yang namanya build in function dan fungsi yang kita deklarasikan sendiri. Build in function adalah fungsi-fungsi yang sudah ada dalam library C itu sendiri seperti beberapa fungsi string yang ada di string.h (strlen, strcpy, strcmp, dll). Aturan penggunaan build in function untuk string akan kita bahas di tutorial mendatang.
Contoh membuat fungsi sederhana :
Struktur fungsi :
Tipe Data
Sama halnya dengan variabel, setiap fungsi juga ada tipe datanya. Tipe data sendiri ada yang namanya int, float, double, char dan ada juga void. Void artinya tidak bertipe data sehingga tidak memerlukan nilai return. Itulah sebabnya kenapa jika kita menggunakan int main(){} maka kita wajib melakukan return 0; di paling bawah fungsi.
Nama Fungsi
Nama fungsi merupakan nama alias yang akan kita gunakan saat pemanggilan. Seperti contoh diatas tadi, jika nama fungsinya adalah belajarfungsi maka saat pemanggilan kita akan menulis seperti ini : belajarfungsi();
Parameter
Parameter merupakan nilai yang akan dijadikan acuan saat menjalankan program. Bisa dikatakan juga parameter adalah pelengkap saat menjalankan fungsi tertentu. Parameter disini dapat dijabarkan menjadi 2 jenis fungsi yakni :
- Pass by Value
Pass by Value artinya kita akan mempassing value sebagai parameter dalam fungsi yang kita buat, contohnya adalah sebagai berikut :
- Pass by Address
Pass by Address berarti kita akan menggunakan pointer untuk mengakses atau bisa juga mengubah value dari sebuah alamat. Contohnya adalah sebagai berikut :
Terima Kasih
https://www.mahirkoding.com/mengenal-fungsi-dalam-bahasa-c/
Tidak ada komentar:
Posting Komentar