VOID (PROCEDURE/FUNCTION)
Sebuah function berisi sejumlah pernyataan yang dikemas dalam sebuah nama.
Nama ini selanjutnya dapat dipanggil beberapa kali di beberapa tempat dalam program.
Tujuan
memudahkan dalam mengembangkan program. Program dibagi menjadi beberapa subprogram kecil, sehingga hal ini menjadi kunci dalam pembuatan program terstruktur.
menghemat ukuran program, karena beberapa perintah yang sama dan dijalankan beberapa kali dalam program dapat dijadikan satu kali saja dalam suatu function, kemudian function tersebut dapat dipanggil berulang kali.
Contoh 1
#include <conio.h>
#include <iostream.h>
void garis(); // prototype function Atau Mendeklarasi
void main() // main function
{
clrscr();
garis(); // panggil function
cout << “NIM NAMA MAHASISWA” << endl;
garis(); // panggil function
cout << “M0197001 AMIR HAMZAH “ << endl;
cout << “M0197002 PAIMAN” << endl;
garis(); // panggil function
getch();
}
void garis() // detail function Atau mendefinisikan
{
int i;
for(i=0;i<=40;i++)
{
cout << “-”;
}
cout << endl;
}
Contoh 2
#include<iostream.h>
#include<conio.h>
void CETAK();
void main()
{
CETAK();
getch();
}
void CETAK()
{
cout<<“JAKARTA”;
}
Prosedur/Function dapat ditulis sebelum atau sesudah fungsi utama(main)
Bila ditulis sesudah fungsi main, maka perlu membuat suatu prototype(Deklarasi) dari function tersebut. Prototype function memiliki sintaks sbb:
returned_value_data_type nama_function(argumen);
Bila ditulis sebelum fungsi main, maka tidak perlu membuat suatu prototype(Deklarasi) dari function tersebut.
Suatu function dapat mengembalikan (return) suatu nilai (value) yang tergantung tipe datanya. Tipe data value yang dikembalikan inilah yang dimaksud dengan returned_value_data_type.
Sedangkan argumen merupakan parameter-parameter yang akan diolah dalam function tersebut
Argumen boleh ada boleh tidak, sesuai kebutuhan. Apabila parameter argumennya lebih dari satu, cara penulisannya sbb:
tipe_data param1, tipe_data param2, ...
Contoh penulisan prototype function:
double kuadrat(int x);
float luas_segitiga(float alas, float tinggi);
int jumlah_bil(int x, int y, int z);
Apabila suatu function tidak mengembalikan nilai, maka returned_value_data_type nya diisi void atau sering disebut procedure
Fungsi tanpa nilai balik tidak memerlukan pernyataan return pada definisinya.
Anda dapat mencoba program berikut :
#include <conio.h>
#include <iostream.h>
int mins(int a, int b, int c);
void main()
{
int a, b, c, minim;
cout<<"Masukkan A : ";
cin>>a;
cout<<"Masukkan B : ";
cin>>b;
cout<<"Masukkan C : ";
cin>>c;
minim = mins(a, b, c);
cout<<"Bilangan terkecil = "<<minim;
getch();
}
int mins(int a, int b, int c)
{
int kecil;
if (a<b)
kecil = a;
else
kecil = b;
if (c<kecil)
kecil = c;
return(kecil);
}
Fungsi tanpa nilai balik
#include <conio.h>
#include <iostream.h>
void mins(int a, int b, int c);
void main()
{
int a, b, c, minim;
cout<<"Masukkan A : ";
cin>>a;
cout<<"Masukkan B : ";
cin>>b;
cout<<"Masukkan C : ";
cin>>c;
mins(a, b, c);
getch();
}
void mins(int a, int b, int c)
{
int kecil;
if (a<b)
kecil = a;
else
kecil = b;
if (c<kecil)
kecil = c;
cout<<"Bilangan terkecil = "<<kecil;
}
Ruang Lingkup Variabel
Berdasarkan penyimpanan terkait dengan ruang lingkup variabel, terdapat 2 jenis variabel yaitu :
Variabel otomatis(Lokal)
Variabel eksternal(Global)
Variabel Otomatis(Lokal)
Variabel yang didefinisikan didalam suatu fungsi berlaku sebagai variabel lokal pada fungsi.
Artinya variabel tersebut hanya dikenal pada fungsi dimana variabel tersebut di definisikan.
Begitu juga variabel pada fungsi main()
Variabel ini disebut variabel otomatis.
Variabel Otomatis
#include <iostream.h>
#include <conio.h>
void alpha();
void main()
{
int x = 10;
int y = 20;
cout<<"Fungsi main()"<<endl;
cout<<"x = "<<x<<endl;
cout<<"y = "<<y<<endl;
alpha();
cout<<"Fungsi main()"<<endl;
cout<<"x = "<<x<<endl;
cout<<"y = "<<y<<endl;
getch();
}
void alpha()
{
int x = 50;
int y = 100;
cout<<"Fungsi alpha()"<<endl;
cout<<"x = "<<x<<endl;
cout<<"y = "<<y<<endl;
}
Contoh Lain
#include <iostream.h>
#include <conio.h>
void cetak();
void main()
{
int a;
a = 10;
cout << “Nilai a = “ << a << endl;
cetak();
getch();
}
void cetak()
{
a++;
cout << “Nilai a = “ << a << endl;
}
FUNCTION
Ketika program di atas dicompile, akan terdapat error yaitu variabel a dalam function cetak() undefined. Artinya bahwa variabel a tidak dikenal dalam cetak().
Variabel a hanya dikenal dalam program utama/ function main() saja. Maka dalam hal ini variabel a disebut variabel lokal (hanya dikenal dalam function yang di dalamnya didefinisikan a tersebut).
Variabel Eksternal(Global)
Variabel eksternal merupakan kebalikan variabel otomatis.
Variabel ini didefinisikan di luar fungsi manapun.
Variabel ini juga dikenal dengan variabel global.
Variabel Eksternal
#include <iostream.h>
#include <conio.h>
int bilangan = 100; //variabel eksternal
void tambah(); //prototipe fungsi
void main()
{
clrscr();
cout<<bilangan<<endl;
tambah();
cout<<bilangan<<endl;
tambah();
cout<<bilangan<<endl;
getch();
}
//definisi fungsi
void tambah()
{
bilangan++;
}
Guna memperjelas bahwa suatu variabel di dalam fungsi merupakan variabel eksternal, di dalam fungsi yang menggunakannya dapat dideklarasikan dengan menambahkan kata kunci extern.
//definisi fungsi
void tambah()
{
extern bilangan;
bilangan++;
}
0 komentar:
Posting Komentar