Fungsi dalam C Outline Fungsi standar Predefined Fungsi

  • Slides: 27
Download presentation
Fungsi dalam C++

Fungsi dalam C++

Outline • Fungsi standar (Predefined) • Fungsi yang didefinisikan oleh pengguna (User defined function)

Outline • Fungsi standar (Predefined) • Fungsi yang didefinisikan oleh pengguna (User defined function) • Fungsi dengan nilai balik • Membangun dan menggunakan fungsi dengan nilai balik dalam program

Pendahuluan • Program C++ merupakan kumpulan dari fungsi • Salah satu fungsi adalah main

Pendahuluan • Program C++ merupakan kumpulan dari fungsi • Salah satu fungsi adalah main • Fungsi dapat digunakan untuk membagi program menjadi bagian-bagian yang dapat diatur (manageable pieces) • Fungsi disebut juga sebagai modul • Fungsi seperti miniatur program, yang dapat digunakan untuk membentuk program yang lebih besar

Fungsi • Keuntungan dari fungsi: – Fokus dalam membentuk, memperbaiki, dan menyempurnakan program –

Fungsi • Keuntungan dari fungsi: – Fokus dalam membentuk, memperbaiki, dan menyempurnakan program – Orang yang berbeda dapat bekerja pada fungsi yang berbeda secara bersamaan – Jika fungsi digunakan pada lebih dari satu tempat di program, atau pada program lain, fungsi dapat ditulis satu kali dan digunakan berkali-kali – Membuat program dapat dibaca dengan mudah karena fungsi dapat mengurangi kompleksitas dari fungsi main

Fungsi • Fungsi bernama f(x) memiliki satu parameter x didefinisikan sebagai f(x) = x

Fungsi • Fungsi bernama f(x) memiliki satu parameter x didefinisikan sebagai f(x) = x 2 + 3 x -5 – Jika diberi harga x = 4 maka f(x) akan menghasilkan 23 – Jika diberi harga x = 1 maka f(x) akan menghasilkan -1 • Fungsi f(x, y) memiliki dua parameter x dan y, didefinisikan sebagai f(x, y) = x 2 + 3 xy – 5 y – 1 – Jika diberi harga x = 0 dan y = 0 maka f(x, y) akan menghasilkan -1 – Jika diberi harga x = 1 dan y = 0 maka f(x, y) akan menghasilkan 0

Fungsi • Klasifikasi fungsi – Predefined function – User defined function • Fungsi dengan

Fungsi • Klasifikasi fungsi – Predefined function – User defined function • Fungsi dengan nilai balik • Fungsi tanpa nilai balik (Prosedur)

Predefined Function •

Predefined Function •

Predefined Function • Fungsi sqrt (x), – menghitung akar dari x untuk x >=

Predefined Function • Fungsi sqrt (x), – menghitung akar dari x untuk x >= 0, – tipe data double, mempunyai satu parameter • Fungsi floor (x), – floor(48. 79)= 48, floor (45, 79) = 45, – tipe data double, mempunyai satu parameter

Predefined Function • Pada C++, predefined function diatur pada libraries tersendiri – Header file

Predefined Function • Pada C++, predefined function diatur pada libraries tersendiri – Header file iostream mengandung fungsi I/O – Header file cmath mengandung fungsi math • Untuk menggunakan predefined function, kita harus menyertakan header file yang mengandung spesifikasi fungsi yang bersangkutan

Contoh Predefined Function #include <iostream> #include <cmath> #include <cctype> using namespace std; int main()

Contoh Predefined Function #include <iostream> #include <cmath> #include <cctype> using namespace std; int main() { int x; double u, v; u = 3; v = 2; cout << u << " pangkat " << v << " adalah " << pow(u, v) << endl; return 0; }

User Defined Function • C++ tidak menyediakan setiap fungsi yang dibutuhkan pengguna. Pengguna harus

User Defined Function • C++ tidak menyediakan setiap fungsi yang dibutuhkan pengguna. Pengguna harus belajar menulis fungsi nya sendiri (User defined function) • Klasifikasi user defined function: – Fungsi dengan nilai balik – Fungsi tanpa nilai balik/void function/prosedur

Fungsi • Item yang perlu diperhatikan dalam membangun fungsi: – Nama fungsi – Jumlah

Fungsi • Item yang perlu diperhatikan dalam membangun fungsi: – Nama fungsi – Jumlah parameter (jika ada) – Tipe data setiap parameter – Tipe data dari fungsi – Kode untuk menjalankan tugas • Item 1 -4 disebut sebagai heading atau function header, item 5 disebut body dari fungsi

Tahapan Membangun Fungsi 1. Mendefinisikan fungsi – Memberikan nama – Mendefinisikan parameter formal (parameter

Tahapan Membangun Fungsi 1. Mendefinisikan fungsi – Memberikan nama – Mendefinisikan parameter formal (parameter input) – Mendefinisikan type hasil 2. Merealisasikan fungsi – Membuat algoritma fungsi: memroses input hasil 3. Menggunakan fungsi dalam program utama – Memanggil fungsi dengan menggunakan parameter aktual

Struktur Fungsi type hasil Nama_Fungsi(daftar parameter input formal) { /*Spesifikasi fungsi, berisi penjelasan tentang

Struktur Fungsi type hasil Nama_Fungsi(daftar parameter input formal) { /*Spesifikasi fungsi, berisi penjelasan tentang apa yang dilakukan dan yang dikembalikan oleh fungsi ini*/ /*semua nama yang digunakan dalam fungsi dan hanya berlaku lokal di dalam fungsi didefinisikan di sini*/ /*badan fungsi, berisi kumpulan instruksi}*/ return hasil; } //pengembalian nilai yang dihasilkan fungsi

Mendefinisikan fungsi • Parameter input boleh tidak ada (kosong) • Jika list parameter input

Mendefinisikan fungsi • Parameter input boleh tidak ada (kosong) • Jika list parameter input (parameter FORMAL) ada (tidak kosong, minimal satu nama), maka merupakan satu atau beberapa nama beserta type-nya • Fungsi harus menghasilkan suatu harga • Harga yang dihasilkan oleh fungsi harus memiliki suatu type tertentu

Merealisasikan Fungsi

Merealisasikan Fungsi

Contoh Realisasi Fungsi

Contoh Realisasi Fungsi

Contoh Realisasi Fungsi

Contoh Realisasi Fungsi

Kode Fungsi dalam Program

Kode Fungsi dalam Program

Pemanggilan Fungsi • Saat pemanggilan, terjadi korespondensi antara parameter input (formal) dengan parameter aktual

Pemanggilan Fungsi • Saat pemanggilan, terjadi korespondensi antara parameter input (formal) dengan parameter aktual sesuai dengan urutan penulisan dalam list-nama parameter input • List parameter aktual harus sama jumlah, urutan, dan typenya dengan list parameter input pada pendefinisian fungsinya • Fungsi boleh dipakai oleh program utama, prosedur, atau fungsi lain

Pemanggilan Fungsi Karena fungsi menghasilkan nilai, maka : • nilai tersebut dapat ditampung dalam

Pemanggilan Fungsi Karena fungsi menghasilkan nilai, maka : • nilai tersebut dapat ditampung dalam sebuah peubah yang bertipe sama dengan tipe fungsi : Peubah = NAMA_FUNGSI(daftar parameter aktual); • nilai yang diberikan oleh fungsi dapat langsung dimanipulasi printf(“[format]”, NAMA_FUNGSI(daftar parameter)) if (2 * NAMA_FUNGSI(daftar parameter) < 0) { }

Contoh Fungsi dan Pemanggilannya int pangkat( int y ) { int main() { return

Contoh Fungsi dan Pemanggilannya int pangkat( int y ) { int main() { return y* y; for ( int x = 1; x <= 10; x++ ) cout << pangkat( x ) << " "; cout << endl; return 0; } }

Contoh Fungsi dan Pemanggilannya 2 float luas_persegi(float p, float t) { /* mengembalikan nilai

Contoh Fungsi dan Pemanggilannya 2 float luas_persegi(float p, float t) { /* mengembalikan nilai hasil perhitungan luas persegi*/ int main() { float luas, panjang, tinggi; float hasil; cout << “Masukan Panjang = "; cin>>panjang; cout << “ Masukan. Tinggi = "; cin>>tinggi; hasil = p*t; } return hasil; luas = luas_persegi(panjang, tinggi); cout << “Jadi Luasnya = "<<luas; }

Contoh Fungsi dan Pemanggilannya 3 float PANGKATKAN(float a, int n) { /* mengembalikan harga

Contoh Fungsi dan Pemanggilannya 3 float PANGKATKAN(float a, int n) { /* mengembalikan harga perpangkatan an, n bilangan bulat positif */ float hasil; int i; float PANGKATKAN(float a, int n); Int main() { /* program utama untuk menghitung volume bola dengan rumus V = 4/3 πr 3} */ float V, r; hasil = 1; for( i=1; i<=n; i++) hasil = hasil * a; } return hasil; cout<<"Jari-jari : "; cin>>r; V = 1. 33 * 3. 14 * PANGKATKAN(r, 3); cout<<"Volume Bola : "<< V; }

Latihan q Buat program untuk menghitung luas permukaan tabung dan volume dengan ketentuan sebagai

Latihan q Buat program untuk menghitung luas permukaan tabung dan volume dengan ketentuan sebagai berikut: § Phi=3. 14 dijadikan konstanta § Jari-jari dan tinggi tabung dimasukkan user di program utama § Belum ada modul

Latihan q Kembangkan program di atas dengan membuat fungsi untuk bagian program yang menghitung:

Latihan q Kembangkan program di atas dengan membuat fungsi untuk bagian program yang menghitung: q § Luas permukaan § Volume Dan buat program utamanya yang memanggil ke-2 fungsi tsb.