PENGENALAN VOID (PROCEDURE/FUNCTION)
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++;
}
Tidak ada komentar:
Posting Komentar