Pemanggilan Fungsi
7.3. Pemanggilan Fungsi
fungsi dijalankan ketika untuk melakukan percabangan dipanggil. Fungsi utama akan menuju dan melaksanakan semua dipanggil secara otomatis saat pernyataan yang ada didalam tubuh program dimulai, namun semua fungsi tersebut. Untuk lebih jelasnya fungsi harus dijalankan oleh mari kita lihat Program dibawah, yang pernyataan function call . Ketika berisi dua fungsi yaitu: TampilPesan sebuah fungsi dipanggil, program dan utama.
Program 7.1. #include <conio.h> #include <iostream>
using namespace std;
void TampilPesan() { cout << " >> Salam Hello dari fungsi TampilPesan.\n" ;
2008 | Direktorat Pembinaan SMK
Bahasa Pemrograman Fungsi
int main() {
cout << "Hello dari program Utama.\n" ; cout << " ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐\n" ; TampilPesan(); // memanggil TampilPesan cout << " ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐\n" ; cout << "kembli ke Fungsi Utama lagi.\n" ; getch();
return 0 ; }
Keluaran programnya adalah: Hello dari program Utama. ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐ >> Salam Hello dari fungsi TampilPesan.
‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐ kembli ke Fungsi Utama lagi.
Fungsi TampilPesan disebut oleh nama fungsi yang diikuti oleh tanda baris utama adalah: TampilPesan(); kurung dan titik koma. Coba kita Baris ini digunakan untuk fungsi bandingkan dengan fungsi header panggilan. Dimana hal ini merupakan
seperti berikut:
Function Header
void TampilPesan()
Function Call
TampilPesan();
Fungsi header adalah bagian dalam fungsi, tanda kurung yang dari definisi fungsi. Ia menyatakan akan dikosongkan. kembali sebuah fungsi dari jenis,
Walaupun program mulai nama, dan daftar parameter. Hal ini dijalankan pada program utama tidak diakhiri dengan titik koma (main), fungsi TampilPesan karena definisi dari tubuh fungsi yang
didefinisikan terlebih dahulu. Hal ini mengikutinya. Fungsi panggilan karena compiler harus mengetahui adalah pernyataan yang fungsi dari jenis return, jumlah melaksanakan fungsi tersebut, parameter, dan setiap jenis sehingga diakhiri dengan titik koma parameter sebelumnya yang seperti pernyataan C++ lainnya. dipanggil. Salah satu cara agar Fungsi panggilan tidak ada dalam compiler mengetahui informasi ini daftar, dan jika program ini tidak ke
adalah dengan menempatkan fungsi
Direktorat Pembinaan SMK | 2008
Fungsi
Bahasa Pemrorgraman definisi sebelum semua panggilan ke
pernyataan-nya. Setelah selesai fungsi.
melaksanakan TampilPesan, Perhatikan bagaimana program program cabang kembali ke fungsi diatas mengalir. Dalam memulai, utama dan kembali dengan baris tentu saja, didalam fungsi utama. Bila
yang mengikuti fungsi panggilan. Hal panggilan ke TampilPesan yang ini diilustrasikan pada gambar dihadapi, program untuk cabang dibawah ini. yang berfungsi dan melakukan
void TampilPesan()
cout << " >> Salam Hello dari fungsi TampilPesan.\n" ;
"Hello dari program Utama.\n" ;
TampilPesan(); cout << "kembli ke Funsgi Utama lagi.\n" ; getch(); return 0 ; }
Gambar 7.2. Ilustrasi Fungsi
Dalam menyatakan pemanggilan dibawah merupakan program yang Fungsi dapat menggunakan struktur melakukan pemanggilan fungsi kendali seperti loop, pernyataan IF, TampiPesan kedalam satu looping dan pernyataan switch. Program
Program 7.2. #include <conio.h>
#include <iostream>
using namespace std;
void TampilPesan() {
2008 | Direktorat Pembinaan SMK
Bahasa Pemrograman Fungsi
cout << " >> Salam Hello dari fungsi TampilPesan.\n" ; }
int main() {
cout << "Hello dari program Utama.\n" ; cout << " ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐\n" ;
for (int count = 0 ; count < 5 ; count++)
TampilPesan(); // memanggil Fungsi TampilPesan cout << " ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐\n" ; cout << "kembli ke Funsgi Utama lagi.\n" ; getch();
return 0 ; }
Keluaran Programnya adalah: Hello dari program Utama. ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
>> Salam Hello dari fungsi TampilPesan. >> Salam Hello dari fungsi TampilPesan. >> Salam Hello dari fungsi TampilPesan. >> Salam Hello dari fungsi TampilPesan. >> Salam Hello dari fungsi TampilPesan. ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐ kembli ke Funsgi Utama lagi.
Setiap program dapat dimungkinkan dibawah ini memiliki tiga fungsi: yaitu untuk memiliki banyak fungsi atau utama, fungsi pertama dan fungsi sebuah fungsi dalam sebuah kedua. Untuk lebih jelas perhatikan program. Program dibawah 7.3. program dibawah ini:
Program 7.3 #include <conio.h> #include <iostream>
using namespace std;
void pertama() { cout << " >>Saya sekarang sedang di Fungsi Pertama.\n" ; }
void kedua() 258
Direktorat Pembinaan SMK | 2008
Fungsi
Bahasa Pemrorgraman {
cout << " >> Saya sekarang sedang di Fungsi Kedua.\n" ; }
int main() { cout << "Saya sedang di program Utama.\n" ; pertama(); // pemanggilan fungsi pertama kedua(); // pemanggilan fungsi kedua cout << "Saya kembali ke Program Utama.\n" ; getch();
return 0 ; }
Keluaran programnya adalah sebagai berikut: Saya sedang di program Utama. >> Saya sekarang sedang di Fungsi Pertama.
>> Saya sekarang sedang di Fungsi Kedua. Saya kembali ke Program Utama.
Dalam program diatas fungsi utama pertama dan kedua dengan instruksi terdiri dari pemanggilan fungsi sebagai berikut:
pertama(); kedua();
Setiap panggilan pernyataan kembali ke utama bila fungsi selesai. menyebabkan program untuk cabang
Gambar dibawah menggambarkan ke salah satu fungsi dan kemudian jalan yang diambil oleh program
2008 | Direktorat Pembinaan SMK
Bahasa Pemrograman Fungsi
void pertama() { cout << " >>Saya sekarang sedang di Fungsi Pertama.\n" ; }
void kedua() { cout << " >> Saya sekarang sedang di Fungsi Kedua.\n" ; }
int main() { cout << "Saya sedang di program Utama.\n" ; pertama(); kedua(); cout << "Saya kembali ke Program Utama.\n" ; getch();
return 0 ;
Gambar 7.3. Pemanggilan lebih dari satu fungsi
Sebuah fungsi sering juga Kerja program tersebut adalah fungsi dipanggil dalam dalam sebuah palingdalam dipanggil oleh fungsi hirarki, atau berlapis. Program agakdalam dan kemudian fungsi dibawah ini merupakan sebuah AgakDalam dipanggil oleh fungsi program yang memiliki tiga buah Utama. Untuk lebih jelasnya fungsi dimana fungsi tersebut adalah
perhatikan program dibawah ini: utama, Agakdalam dan PalingDalam .
Program 7.4. #include <conio.h>
#include <iostream>
using namespace std;
void PalingDalam() { cout << "Saya sekarang sedang di dalam fungsi PalingDalam.\n" ; }
void AgakDalam() 260
Direktorat Pembinaan SMK | 2008
Fungsi
Bahasa Pemrorgraman {
cout << "sekarang saya sedang di fungsi AgakDalam.\n" ; PalingDalam(); // panggil Fungsi cout << "Sekarang saya Kembali ke fungsi AgakDalam.\n" ; }
int main() { cout << "saya sekarang sedang didalam fungsi Utama.\n" ; AgakDalam(); // Panggil Fungsi cout << "Saya kembali ke Fungsi Utama Lagi.\n" ; getch();
return 0 ; }
Keluaran Program adalah sebagai berikut: saya sekarang sedang didalam fungsi Utama. sekarang saya sedang di fungsi AgakDalam. Saya sekarang sedang di dalam fungsi PalingDalam. Sekarang saya Kembali ke fungsi AgakDalam. Saya kembali ke Fungsi Utama Lagi.
Dalam Program 7.4 diatasfungsi memanggil fungsi dan kemudian utama hanya memanggil fungsi fungsi yang dipanggil tersebut agakDalam. Sedangkan fungsi memnggil fungsi yang lain. Untuk AgakDalam memanggil Fungsi lebih jelasnya perhatikan gambar PalingDalam. Program diatas adalah
dibawah ini:
2008 | Direktorat Pembinaan SMK
Bahasa Pemrograman Fungsi
void AgakDalam() { cout << "sekarang saya sedang di fungsi AgakDalam.\n" ; PalingDalam(); // panggil Fungsi cout << "Sekarang saya Kembali ke fungsi AgakDalam.\n" ; }
void PalingDalam() { cout << "Saya sekarang di dalam fungsi PalingDalam.\n" ; }
int main() { cout << "saya sekarang sedang didalam fungsi Utama.\n" ; AgakDalam(); // Panggil Fungsi cout << "Saya kembali ke Fungsi Utama Lagi.\n" ; getch();
return 0 ;
Gambar 7.4. Pemanggilan fungsi didalam fungsi