Penulisan function dapat ditulis seperti berikut:
tipe data yang dibalikkan nama function ( parameter yang dikirim )
{
statement;
}
Contohnya :
int maximum(int x, int y)
{
if (x>y) return x;
else return y;
}
Dalam hal ini, tipe data yang dibalikkan function ini adalah integer yaitu angka. Nama function adalah maxumum dengan 2 buah parameter integer. Sehingga ketika ingin memanggil function tersebut kita hanya perlu menuliskan maximum(4, 8);
Parameter yang dikirim ke function tersebut adalah 4 dan 8. Di dalam function maximum ini, x akan menampung angka 4 dan y akan menampung angka 8. Dan kemudian menjalankan kodingan di dalam function tersebut. Dalam hal ini, hasil yang akan dikembalikan function tersebut adalah y karena x<y. Maka nilai dari maximum(4, 8) adalah 8. Tipe data yang dibalikkan dapat berupa void (tidak membalikkan apa-apa), float, string, char, double, long long int, dll.
Recurtion Function adalah sebuah function yang memanggil dirinya sendiri. Di dalam isi function tersebut, ia memanggil dirinya sendiri (function dia sendiri) untuk melakukan sebuah perulangan sampai sebuah kondisi tertentu (base case). Dalam recurtion function harus memiliki base case yang menjadi kondisi function tersebut berhenti memanggil dirinya sendiri. Dari segi ini, kita dapat melihat persamaan antara recurtion function dan perulangan. Benar sekali, recurtion function sama seperti sebuah perulangan dimana ia terus melakukan hal yang sama sampai sebuah kondisi tertentu. Dengan kata lain semua recurtion function dapat diubah menjadi perulangan dan semua perulangan dapat diubah menjadi recurtion function.
Contoh recurtion function:
int faktiroal(int x)
{
if (x==0) return 1;
else return x*faktorial(x-1);
}
Dalam hal ini, ketika parameter yang dikirim adalah 0, maka ia akan membalikkan nilai 1. Ketika parameter yang dikirim adalah yang lain maka ia akan membalikkan nilai x tersebut dikalikan dengan faktorial(nilai x dikurang 1). Function ini akan terus memanggil function dia sendiri sampai ketika nilai x nya sama dengan 0.
Terimakasih telah membaca 😁
2201791295
binus.ac.id
skyconnectiva.com
Schumacher Goldwin
No comments:
Post a Comment