Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

FUNCTION Fungsi (Function) merupakan sekumpulan instruksi yang membentuk satu unit serta memiliki nama. Fungsi digunakan.

Presentasi serupa


Presentasi berjudul: "FUNCTION Fungsi (Function) merupakan sekumpulan instruksi yang membentuk satu unit serta memiliki nama. Fungsi digunakan."— Transcript presentasi:

1 FUNCTION Fungsi (Function) merupakan sekumpulan instruksi yang membentuk satu unit serta memiliki nama. Fungsi digunakan untuk membantu organisasi program dan mengurangi besar (size ) program. Topik yang dibahas : Deklarasi Definisi fungsi ØPrototipe fungsi ØArgumen fungsi ØDefault argumen fungsi Return value Function overloading (Trivial Polymor-phism) Inline Function Function - Yessy Asri

2 Deklarasi dari Definisi Fungsi : Syntax : { blok pernyataan ; } Atau
tipe Nama_Fungsi ( daftar_argumen ) { blok pernyataan ; } Atau tipe Nama_Fungsi ( tipe var_1, tipe var_2, … ) blok_pernyataan; }; dimana: tipe -> tipe data dari return value ( int, float, double, char, void, signed, unsigned, long, short). Nama_Fungsi -> nama fungsi sesuai aturan C++. Function - Yessy Asri

3 daftar_argumen -> variable input / output.
blok_pernyataan -> kumpulan instruksi. Contoh : float Hitung ( float Panjang, float Lebar ) { float Luas; // Deklarasi variabel lokal Luas = Panjang * Lebar; return Luas; }; atau return ( Panjang * Lebar ); Function - Yessy Asri

4 void Hitung ( float Panjang, float Lebar, float *Luas ) {
*Luas = Panjang * Lebar ; }; Prototipe Fungsi : Prototipe fungsi adalah deklarasi fungsi yang hanya memiliki tipe, nama_fungsi, dan daftar_argumen, tetapi tidak memiliki badan_fungsi. Prototipe fungsi harus dideklarasikan sebelum fungsi tersebut dipanggil Biasanya prototipe fungsi dideklarasikan sebelum main program (fungsi main()), dan definisi fungsinya diletakkan setelah main program. Manfaat dari prototipe fungsi adalah untuk menjamin tipe argumen yang dilewatkan pada pemanggilan fungsi benar-benar sesuai. Function - Yessy Asri

5 Deklarasi Prototipe Fungsi :
Tanpa adanya prototipe fungsi, amatlah mudah bagi pemrogram untuk melakukan kesalahan tanpa sengaja dalam melewatkan argumen. Misalnya, melewatkan argumen bertipe float pada fungsi yang seharusnya meminta tipe data int. Deklarasi Prototipe Fungsi : tipe Nama_Fungsi ( tipe var_1, tipe var_2, … ); atau tipe Nama_Fungsi ( tipe , tipe , tipe, … ); Contoh : void Tampil ( float Panjang, float Lebar ); void Tampil ( float , float ); Function - Yessy Asri

6 Argumen (Function Parameter) :
Argumen merupakan data yang dikirim dari program ke fungsi dan sebaliknya. Argumen dipergunakan untuk mengirim / menerima data yang akan diproses. Ada jenis cara untuk mengirimkan argumen yaitu: 1. Passing by Value 2. Passing by Reference Passing by Value : Pada metode ini yang dikirimkan adalah nilai (value) dari variabel yang dikirim sebagai argumen. Perubahan terhadap argumen yang terjadi di dalam fungsi, tidak akan mempengaruhi nilai dari variabel tersebut dari fungsi pemanggil (hanya 1 arah yaitu masuk ke fungsi). Function - Yessy Asri

7 #include <iostream.h> #include <conio.h>
Contoh Program C++ : #include <iostream.h> #include <conio.h> void Tampil ( int Bil ); // Prototipe Fungsi void main() { int Bil = 99; clrscr(); cout << “Nilai Bil sebelum pemanggilan “ << “fungsi = “ << Bil << “\n”; Tampil ( Bil ); // Pemanggilan Fungsi cout << “Nilai Bil setelah pemanggilan “<< “ fungsi = “ << Bil << “\n”; getch(); } void Tampil ( int Bil ) { cout << “Nilai Bil di dalam fungsi Tampil = “<< Bil << “\n”; Bil++; Function - Yessy Asri

8 tipe Nama_Fungsi ( tipe &var_1, … ) { blok_pernyataan; }
Passing by Reference : Pada metode ini yang dikirimkan adalah alamat (reference atau pointer) dari variabel yang dikirim sebagai argumen. Perubahan argumen di dalam fungsi, akan mempengaruhi nilai variabel pada variabel pemanggil. Karena yang dikirimkan adalah pointer. Jenis data yang dikirim sebagai argumen harus berupa variabel, tidak dapat berupa bilangan konstan. Pada C++ diperkenalkan reference parameter untuk menghindari peng-gunaan pointer untuk melakukan passing by reference. Syntax : tipe Nama_Fungsi ( tipe &var_1, … ) { blok_pernyataan; } Function - Yessy Asri

9 #include <iostream.h> #include <conio.h>
Contoh Program C++ : #include <iostream.h> #include <conio.h> void Upper_Case ( char &ch ); // Prototipe Fungsi void main() { char ch; clrscr(); while ( cin.get( ch ) ) { Upper_Case ( ch ); // Pemanggilan fungsi cout << ch; } getch(); void Upper_Case ( char &ch ) ch = (ch >= ‘a’ && ch <= ‘z’ ) ? (ch - 32) : ch; Function - Yessy Asri

10 Default Argumen : C++ mempunyai fasilitas default argument, yaitu suatu nilai tertentu yang akan dipakai sebagai argumen bila fungsi tidak dipanggil dengan argumen lengkap. Pengisian default argument tersebut harus dimulai dari belakang, bila argumen yang paling terakhir telah terisi, kemudian argumen kedua dari akhir boleh diisi dengan defaultargument, dan seterusnya. Semua argumen fungsi boleh diisi dengan default argument. Syntax : tipe Nama_Fungsi ( …, tipe Var_n = Nilai ); atau tipe Nama_Fungsi ( …, tipe Var_n = Nilai ) { blok pernyataan ; } Function - Yessy Asri

11 void Cetak ( int a, int b, int c=0 ); Atau
Contoh : void Cetak ( int a, int b, int c=0 ); Atau void Cetak ( int a, int b=5, int c=0 ); void Cetak ( int a=9, int b=5, int c=0 ); void Cetak ( int a=9, int b=5, int c=0 ) { blok_pernyataan; } // default ar gument di bawah ini adalah salah void Tampil ( int a=9, int b, int c ); void Tampil ( int a=9, int b=5, int c ); void Tampil ( int a, int b=5, int c ); void Tampil ( int a=9, int b, int c=0 ); Function - Yessy Asri

12 #include <iostream.h> #include <conio.h>
Contoh Program C++ : #include <iostream.h> #include <conio.h> void Cetak ( int a, int b=5, int c=0 ) { cout << “a = “ << a << “, b = “ << b << “, c = “ << c<< “\n”; } void main() // Deklarasi Variabel int A=1, B=2, C=3 ; clrscr(); // Hapus layar // Pemanggilan Fungsi Cetak ( A ); Cetak ( A, B ); Cetak ( A, B, C ); getch(); Function - Yessy Asri

13 Return Value : Satu fungsi setelah melaksanakan pekerjaan, maka fungsi tersebut akan mengembalikan hasil. Hasil dari fungsi dikembalikan dengan perintah (state -ment) return. Setiap fungsi yang mempunyai tipe selain void harus menggunakan perintah return untuk mengembalikan hasil. Setiap fungsi yang mempunyai tipe datanya void, maka fungsi tidak bisa menggunakan perintah return untuk mengembalikan hasil, tetapi bisa menggunakan variabel argumennya dalam mengembalikan hasil. Contoh Program C++ : #include <iostream.h> #include <conio.h> float lbs_to_kg ( float ); // Prototipe fungsi void main() { // Deklarasi variabel float lbs, kgs; clrscr(); Function - Yessy Asri

14 Function Overloading :
cout << “Enter your weight in pounds : “; cin >> lbs; kgs = lbs_to_kg ( lbs ); cout << “Your weight in Kilograms is “<< kgs << “\n”; getch(); } float lbs_to_kg ( float pounds ) // Definisi Fungsi { float kilograms = * pounds; return kilograms; Function Overloading : Satu fungsi yang dapat melakukan aktifitas yang berbeda tergantung dari data yang diterima. Pada C++, fungsi dapat mempunyai nama yang sama namun dengan tugas yang berbeda, hal ini disebut function overloading atau polimorfisme semu (trivial polymorphism). Function Overloading dapat diterapkan bila tiap fungsi mempunyai ciri khas fungsi (function signature ) yang berbeda. Function - Yessy Asri

15 Ciri khas fungsi terdiri atas : - Jenis tipe data argumen
- Jumlah argumen - Urutan letak argumen Contoh Program C++ : #include <iostream.h> #include <conio.h> void print ( int i ); void print ( char ch ); void print ( char ch, int i ); void print ( int I, char ch ); void main() { clrscr(); // Pemanggilan Fungsi print ( 10 ); print ( ‘A’ ); print ( ‘B’, 10 ); print ( 9, ‘X’ ); getch(); } Function - Yessy Asri

16 cout << “Integer : “ << i << endl; }
void print ( int i ) { cout << “Integer : “ << i << endl; } void print ( char c h, int i ) for ( int j=0; j<i; j++ ) cout << ch; cout << endl; void print ( int i, char ch ) cout << “Integer : “ << i << endl; cout << “Character : “ << ch << endl; Function - Yessy Asri

17 Inline Function : Fungsi ini bermanfaat menghemat memori (mengabaikan peletakan argumen-argumen fungsi dalam stack pada saat pemanggilan fungsi), dengan cara menggabungkan fungsi ke dalam program utama. Inline function disarankan dipakai pada fungsi yang sering dipanggil dan ukurannya kecil (terdiri dari satu atau dua pernyataan). Pembuatan Inline function tersebut dilakukan dengan cara menambahkan keyword inline di depan tipe fungsi pada saat mendefinisikan fungsi. Syntax : inline tipe Nama_Fungsi ( argumen ) { blok_pernyataan; return Nilai; } Function - Yessy Asri

18 inline float Luas ( float Pj, float Lb ) { return ( Pj * Lb ); }
Contoh : inline float Luas ( float Pj, float Lb ) { return ( Pj * Lb ); } Contoh Program C++ : #include <iostream.h> #include <conio.h> inline float inch_to_cm ( float inches ) { return ( 2.54 * inches ); } void main() { float inches; clrscr(); cout << “Enter your height in inches = “; cin >> inches; cout << “Your height in cm is “<< inch_to_cm ( inches ) << endl; getch(); Function - Yessy Asri


Download ppt "FUNCTION Fungsi (Function) merupakan sekumpulan instruksi yang membentuk satu unit serta memiliki nama. Fungsi digunakan."

Presentasi serupa


Iklan oleh Google