Pertemuan 19 FUNGSI (Method) Bag.2 Dibuat oleh : Renni Angreni, S.Kom. Triana Elizabeth, S.Kom
FUNGSI Fungsi yang tidak mengembalikan nilai lebih sering disebut sub rutin. Sedangkan fungsi yang memberikan nilai kembali, disebut fungsi. Fungsi ini mengembalikan nilai dengan perintah return. Statement atau perintah return berfungsi untuk keluar dari fungsi dan atau mengembalikan nilai.
Statement RETURN Untuk fungsi tanpa nilai kembali, tipe data fungsi harus void yaitu tanpa tipe data. Pada fungsi tipe ini, pernyataan return berfungsi untuk keluar dari fungsi dan tidak memiliki nilai kembali. Jika suatu fungsi mengembalikan nilai, maka fungsi itu harus didefinisikan sebagai tipe data tertentu. Dan nilai yang dikirim pada statement return harus sesuai dengan tipe data tersebut.
Mendefinisikan fungsi dengan nilai kembali : tipeData namaFungsi() { [blok pernyataan] return (ungkapan); } tipeData namaFungsi(parameter) { [blok pernyataan] return (ungkapan); }
Contoh #include using namespace std; double kuadrat(double bilanganBulat) { return (bilanganBulat * bilanganBulat); } void main() { const float Phi = 3.14; double luas = Phi * kuadrat(3.25); cout<<"Luas lingkaran = "<<luas<<endl; _getch(); }
Contoh #include using namespace std; int terbesar (int a, int b) {if (a < b) return b; else return a; } void main() {int c, d; cout<<"---Input Dua Bilangan---"<<endl; cout >c; cout >d; cout<<"Yang terbesar adalah "; int maksimum = terbesar(c,d); cout<<maksimum; _getch(); }
Contoh #include using namespace std; float persegi(float s) { float luas = s * s; return luas; } void main() { int sisi; cout<<"---Hitung Luas Persegi---"<<endl; cout >sisi; cout<<"Luas persegi = "<<persegi(sisi)<<endl; cout<<" "; _getch(); }
Suatu nama fungsi dapat dibuat mempunyai perilaku yang berbeda-beda tergantung argumen yang dimasukkan. Misalkan : int kuadrat (int a); float kuadrat (float a); double kuadrat (double a); int maksimum(int a, int b); int maksimum(int a, int b, int c); int maksimum(double a, double b); Overloading Fungsi
Contoh #include using namespace std; int terbesar (int a, int b) {if (a < b) return b; else return a; } int terbesar (int a, int b, int c) {int hasil; if (a < b) hasil=b; else hasil=a; if (hasil < c) hasil=c; return hasil; } void main() {int d=20, e=30, f=40; cout<<"Antara d, e dan f, mana yang terbesar? "; cout<<terbesar(d,e,f)<<endl; cout<<"Antara d dan f, mana yang terbesar? "; cout<<terbesar(d,e); _getch(); }
LATIHAN 1.Buatlah sebuah program C++ untuk menentukan bilangan terkecil dari lima buah bilangan yang diinput oleh user. Gunakan fungsi / method. 2.Buatlah sebuah program C++ untuk menerima input dua buah bilangan dari user kemudian tampilkan hasil penjumlahan, pengurangan, perkalian dan pembagian dari bilangan tersebut dengan fungsi / method.