180 likes | 404 Views
PERTEMUAN V. F U N G S I Tujuan membuat suatu fungsi Format penulisan fungsi User defined function Function pass by value Function pass by reference Prototipe fungsi Rekursi. Pertemuan V. Fungsi dan tujuan membuat suatu fungsi
E N D
PERTEMUAN V F U N G S I Tujuan membuat suatu fungsi Format penulisan fungsi User defined function Function pass by value Function pass by reference Prototipe fungsi Rekursi
Pertemuan V • Fungsi dan tujuan membuat suatu fungsi • Fungsi adalah kelompok dari beberapa statement atau lebih yang menjadi satu unit kesatuan dan dengan nama fungsi tertentu • Tujuan membuat suatu fungsi adalah : • Memudahkan dalam mengembangkan program. Hal ini merupakan kunci dalam pembuatan programyang terstruktur dimana program dibagi menjadi beberapa modul yang kecil • Menghemat ukuran program. Manfaat ini terasakan kalau ada beberapa deretan instruksi yang sama digunakan pada beberapa tempat di dalam program.
Pertemuan V • Format penulisan fungsi • Bentuk umum : tipe nama_fungsi (deklarasi parameter) { pernyataan; pernyataan; }
Pertemuan V • Tipe Tipe nilai yang dihasilkan oleh fungsi. Jika tidak dinyatakan, hasil fungsi dianggap bilangan bulat (int) • Deklarasi parameter Daftar tipe dan nama variabel yang akan menerima nilai pada saat fungsi tersebut dipanggil. Setiap parameter dipisahkan oleh tanda koma. Jika fungsi tidak mempunyai parameter daftar ini akan kosong. Jadi hanya tanda kurung saja.
Pertemuan V • Contoh program ////////////////////////////////////////////////////////////////////////////// // Nama file : FUNC1.CPP // // Tujuan : Contoh fungsi sederhana // //////////////////////////////////////////////////////////////////////////// #include <iostream.h> #include <conio.h> Vod garis (void) ; // Deklarasi prototipe Void main (void) { clrscr ( ) ; garis ( ) ; cout << “ STMIK JAKARTA STI&K “ << endl ; garis ( ) ; cout << “ N P M : 10411289 “ << endl ; cout << “ NA M A : Munich “ << endl ; garis ( ) ; } / / / Nama fungsi : garis ( ) / / / Definisi fungsi Void garis (void) { for ( int x = 0 ; x <= 70 ; x++ ) cout << “-” ; cout << endl ; }
Pertemuan V • Hasil yang akan muncul ------------------------------------------------------------ STMIK JAKARTA STI&K ------------------------------------------------------------ N P M : 10411289 N A M A : Munich ------------------------------------------------------------ • Tanpa menggunakan fungsi, maka statement yang ada dalam fungsi garis akan anda tulis berulang-ulang.
Pertemuan V • Fungsi dengan parameter • Parameter yang terdapat pada pendefinisian sebuah fungsi disebut dengan parameter formal • Parameter yang terdapat pada saat pemanggilan disebut parameter aktual
Pertemuan V Function pass by value (melewatkan parameter berdasarkan nilai) • Fungsi ini akan melewatkan nilai parameter ke dalam sebuah fungsi untuk digunakan sesuai proses yang terdapat di dalam fungsi tersebut • Contoh program #include <iostream> Using namespace std; / / Membuat fungsi dengan melewatkan nilai x ke dalamnya Void Kali2(int x) { x = x * 2; cout<< “Nilai di dalam fungsi : “ <<x<<endl; }
Pertemuan V / / Fungsi utamaint main( ) { int bilangan; cout<< “Masukkan sebuah bilangan bulat : “; cin>> bilangan; cout<<endl; / / Menampilkan nilai awal cout<< “ Nilai awal : “<<bilangan<,endl; / / Memanggil fungsi Kali2 Kali2(bilangan); / / Menampilkan nilai akhir cout<< “ Nilai akhir : “<<bilangan<<endl; return 0;}
Pertemuan V Hasil yang akan muncul Masukkan sebuah bilangan bulat : 10 Nilai awal : 10 Nilai di dalam fungsi : 20 Nilai akhir : 10
Pertemuan V Function pass by reference (melewatkan parameter berdasarkan alamat) • Berbeda dengan pass by value, pass by reference adalah melewatkan parameter ke sebuah fungsi berdasarkan alamatnya. • Melewatkan parameter dengan cara seperti ini akan menyebabkan nilai yang tedapat di dalam fungsi akan sama persis dengan nilai yang terdapat pada program (diluar fungsi)
Pertemuan V • Contoh program #include <iostream> using namespace std; / / Mendefinisikan fungsi yang melewatkan parameternya / / berdasarkan alamat Void Kali2(int& x) { / / Gunakan tanda & / / untuk membuat alias atau reference x = x * 2; cout<< “ Nilai di dalam fungsi : “<<x<<endl; } Int main ( ) { int bilangan; cout<< “Masukkan sebuah bilangan bulat : “; cin>>bilangan; cout<<endl;
Pertemuan V / / Menampilkan nilai awal cout<<bilangan<<endl; Kali2(bilangan); / / Memanggil fungsi Kali2 / / Menampilkan nilai akhir cout<<bilangan<<endl; return 0; } • Hasil yang akan muncul Masukkan sebuah bilangan bulat : 10 Nilai awal : 10 Nilai di dalam fungsi : 20 Nilai akhir : 20
Pertemuan V Prototype Fungsi • Definisi fungsi baru dibuat setelah pembuatan fungsi utama, hal ini disebut dengan istilah prototype • Prototype akan mempermudah kita dalam mengenali daftar fungsi yang tersedia atau akan didefinisikan di dalam program • Bentuk umum : tipe_data nama_fungsi (parameter1, parameter2, …);
Pertemuan V Rekursi • Suatu fungsi dapat memanggil fungsi yang merupakan dirinya sendiri • Contoh penerapan rekursi diantaranya untuk menghitung nilai : Xn dengan n berupa bilangan bulat positif • Contoh program : / / * ------------------------------------------------* / / * pangkat.cpp * / / * Operasi pangkat secara rekursi * / / * ------------------------------------------------* #include <iostream.h> #include <conio.h>
Pertemuan V long int pangkat (int x, int n); void main ( ) { int x, y; clrscr ( ); / / Hapus layar cout << “Menghitung x^y” << endl; cout << “x = “; cin >> x; cout << “y = “; cin >> y; cout << x << “ ^ ” << y << “ = “ << pangkat (x, y) << endl; } Long int pangkat (int x, int n) { if (n == 1) return (x); else return (x * pangkat (x, n-1) ); }
Pertemuan V • Hasil yang akan muncul Menghitung x^y x = 2 y = 3 2 ^ 3 = 8