11 Okt 2009

Pertemuan 2 PBO

Dalam C++ modul berperan sebagai fungsi dan class

Ada 2 jenis modul, yaitu :
1. Prepackaged, yaitu berupa standard library yg sudah tersedia dalam bahasa pemrograman.
2. Modul baru, yaitu modul yg dibuat oleh programmer sendiri.

Apa itu fungsi??
Fungsi biasa disebut function adalah merupakan kumpulan instruksi program yang dikelompokkan menjadi satu dan letaknya terpisah dari main program.

Sifat fungsi :
1. Fan-in tinggi
Semakin sering sebuah modul dipanggil, semakin tinggi nilai fan-in nya.
2. Fan-out rendah
Semakin spesifik fungsi suatu modul, semakin rendah pula nilai fan-out nya.

Keuntungan menggunakan fungsi :
1. Main program akan terlihat lebih singkat dan mudah untuk dimengerti.
2. Lebih mudah mencari kesalahan jika terjadi error.
3. Program yg besar dapat dipecah-pecah menjadi satuan fungsi yg lebih kecil.
4. Memungkinkan pembuatan program dilakukan oleh beberapa orang.
5. Lebih mudah untuk dokumentasi program.

Fungsi biasanya diletakkan diatas main program. Bila fungsi ditulis dibawah main program, saat dicompile program akan error. Hal ini disebabkan karena cara jalan program ( sequence ) yg membaca program dari atas ke bawah. Karena itu fungsi tidak akan ditemukan saat main program memanggil fungsi tersebut. Salah satu cara agar fungsi bisa terbaca, yaitu dengan menggunakan prototype. Prototype ditulis diatas main program untuk mendeklarasikan fungsi yg ditulis dibawah main program.


//contoh program yang menggunakan function dan prototype

#include "iostream.h"

float gaji;
float tax;

void pajak(); // prototype

void main()
{
    cin >> gaji;
    cin.clear();
    cin.sync();
    pajak();
    cin.get();
}


//contoh function
void pajak()

{
     if(gaji <= 5000)
     tax = 0;

     else
     {    if((gaji > = 5100) && (gaji < = 10000))
           tax = (gaji*6)/100;

           else if((gaji > = 11000)  && (gaji < = 20000))
           tax = (gaji*15)/100;

            else if((gaji > = 21000)  && (gaji < = 30000))
            tax = (gaji*20)/100;

            else if((gaji > = 31000)  && (gaji < = 40000))
            tax = (gaji*25)/100;

            else tax = (gaji*30)/100;
       }

       cout << "Gaji : " << gaji << "  --  Tax : " << tax;
}

0 komentar:

Posting Komentar