Tuesday, February 5, 2019

C++ Programming 8 - Fungsi dan Prosedur di C++

Assalamu'alaikum

Selamat sore, salam programming. Melanjutkan kembali pembahasan mengenai CPP programming (C++). Kali ini yang ingin saya bahas adalah fungsi dan prosedur pada C++. Jika if else dan perulangan adalah instruksi dan komponen yang penting untuk menjalankan beberapa kondisi programming di c++, maka fungsi dan prosedur merupakan bagian inti dari c++ itu sendiri.

Fungsi di C++

Fungsi merupakan suatu bagian dari program c++ yang di maksudkan untuk mengerjakan suatu tugas tertentu dan letaknya terpisah dari program yang memanggilnya. Fungsi merupakan elemen utama dalam c++ karena bahasa c++ sendiri terbentuk dari kumpulan fungsi-fungsi. Dalam setiap program, setidaknya terdapat satu fungsi utama yang merupakan fungsi awal pemanggilan program yaitu fungsi main()


Sebelum di gunakan atau di panggil, suatu fungsi harus di deklarasikan dan di definisikan terlebih dahulu, bentuk umum pendeklarasiannya kurang lebih seperti ini : 

TipeFungsi NamaFungsi (ParameterFungsi

Tipe fungsi di deklarasikan apakah tipe int, string, float atau lainnya. Nama fungsi digunakan sebagai penamaan saja, merupakan nama suatu variabel. Parameter fungsi berisi kondisi dan status dari fungsi yang digunakan. Untuk pendefinisian fungsi kurang lebih seperti berikut ini :
TipeFungsi NamaFungsi (ParamenterFungsi){
            statement
            statement
            .............
} 
Hal-hal yang perlu di perhatikan dalam penggunaan fungsi :
  • Kalau tipe fungsi tidak di sebutkan, maka secara default fungsi akan di anggap bertipe integer.
  • Untuk fungsi yang memiliki keluaran bertipe bukan integer, maka di perlukan pendefinisian penentu tipe fungsi.
  • Untuk fungsi yang tidak memiliki nilai keluaran maka di masukan ke dalam tipe void. 
  • Pernyataan yang di berikan untuk memberikan nilai akhir fungsi berupa pernyataan return
  • Suatu fungsi dapat menghasilkan nilai balik bagi fungsi pemanggilnya.
Contohnya kita akan membuat suatu fungsi di luar fungsi main. Contoh disini saya membuat fungsi penjumlahan bilangan yang di input. Proses instruksi penjumlahan di letakkan di fungsi tambah artinya di luar fungsi main. Untuk membuat fungsi tambah terlebih dahulu kita deklarasikan tipe fungsi dan parameternya. 
#include <iostream>
#include <conio.h>
using namespace std;

float tambah(float x, float y); /* deklarasi fungsi tambah */
int main(){

    float a, b, c;
    cout << "A = ";
    cin >> a;
    cout << "B = ";
    cin >> b;
  
    c = tambah(a, b); /* pemanggilan fungsi tambah() */
    cout << "A + B = " << c;
    getch();
}

float tambah(float x, float y) { /* Lokasi eksekusi fungsi */
    return (x + y); /* Nilai balik fungsi berupa statement */
}
Float x digunakan untuk float variabel a dalam fungsi main dan float y digunakan untuk  float variabel b. Jika bagian atas merupakan deklarasi, bagian bawah adalah untuk mengeksekusi statement statemen yang di inginkan. Instruksi return untuk mengembalikan ke fungsi awal yaitu fungsi main.


Fungsi Rekursif

Fungsi rekursif adalah fungsi yang memanggil dirinya sendiri. Kita bisa menyebutnya loop namun tetap sebagai suatu fungsi. Perbedaannya dengan fungsi biasa adalah bahwa rekursif bisa memanggil dirinya sendiri, tetapi fungsi biasa harus di panggil lewat pemanggil prosedur atau fungsi. Fungsi rekursif jarang di temui tergantung kondisi dan pemakaian yang di perlukan untuk menjalankan instruksi sesuai fungsi tersebut.
 
#include <iostream>
#include <conio.h>
using namespace std;

long int faktorial(int N); /* deklarasi fungsi faktorial */
int main(){
    int N;
    cout << "Berapa Factorial ? ";
    cin >> N;
    cout << "Faktorial dari " << N << " = " << faktorial(N);
    getch();
}

long int faktorial(int N) { /* eksekusi fungsi faktorial */
    if(N==0){
            return(1);
    }
    else{
            return(N * faktorial(N - 1)); // fungsi faktorial() memanggil fungsi factorial()
    }
}

Prosedur Di C++

Prosedur adalah jenis fungsi yang berbeda lainnya dalam hal ini void. Prosedur dan fungsi biasa adalah 2 jenis instruksi yang berbeda. Dalam prosedur tidak ada pengembalian nilai seperti fungsi biasa. Namun prosedur dan fungsi sama sama terpisah dari program utama. Cara penulisan prosedur :
  • Di berikan suatu nama yang berfungsi untuk penamaan saja. Merupakan nama suatu variabel. 
  • Parameter formal (jika ada), yaitu di berikan parameternya.
Berikut contoh prosedur (void) tanpa parameter. 
#include <iostream>
using namespace std;

int a,b;

void tambah(){
    int p;
    p = a + b;
    cout << "X + Y = " << p;
}

int main(){
    cout << "X = ";
    cin >> a;
    cout << "Y = ";
    cin >> b;
    tambah();
}
Berikut contoh prosedur (void) dengan parameter. Yaitu parameter untuk mengubah bentuk variabel x, y menjadi variabel a dan b.

#include <iostream>
using namespace std;

int x,y;

void tambah(int a, int b){
    int p;
    p = a + b;
    cout << "X + Y = " << p;
}

int main(){
    cout << "X = ";
    cin >> x;
    cout << "Y = ";
    cin >> y;
    tambah(x, y);
}
Demikian penjelasan mengenai fungsi dan prosedur di c++ semoga bermanfaat bagi pembaca. Sekian dari saya, saran dan pertanyaan bisa letakkan di komentar. Terima kasih sudah berkunjung, sampai berjumpa di pembahasan berikutnya. Salam programming!!

0 komentar:

Post a Comment

Kenal Saya

Follow My Twitter

Profil



Nama saya Alfa Farhan Syarief, web ini ada berdasarkan nama saya sendiri. Saya sendiri masih duduk tingkat SMK. Lebih lengkapnya saya masih bersekolah di SMKN 1

More »

Blog Archive

Recent Comment