FUNGSI
FUNGSI
FUNGSI
FUNGSI
Bhs.Pemrograman 1
Bhs.Pemrograman 1
Oleh :
Oleh :
Desma Fitri, S.Kom
FUNGSI
• Merupakan blok dari kode yang dirancang untuk melaksanakan tugas khusus.
• Kegunaan dari fungsi adalah:
1. untuk mengurangi pengulangan penulisan program yang sama
2. Agar program menjadi lebih terstruktur sehingga mudah dipahami dan dapat lebih dikembangkan.
3. Fungsi berguna untuk mengumpulkan statement yang dapat dijalankan menjadi satu dalam suatu blok dan menjalankannya
Jenis Fungsi :
• Fungsi yg sudah bawaan c++,
ex:main,printf,cout,getch, dll.
Contoh pembuatan fungsi sederhana
:
//pembuatan fungsi garis #include<conio.h>
#include<stdio.h>
#include<iostream.h> garis()
{
printf("\n---\n"); }
//program utama void main()
{
garis();//memanggil fungsi garis cout<<"STIKOM DB Jambi"<<endl; garis();
Contoh 2
//contoh fungsi
#include <iostream.h> #include <conio.h>
int penjumlahan(int a, int b) {
int r; r=a+b;
return (r); //merupakan pengakhir fungsi penjumlahan
}
void main() {
int z;
z=penjumlahan(5,3);
cout<<"Hasil penjumlahan = " << z; getch();
Deklarasi fungsi dapat dilakukan
dengan dua cara, yaitu:
Header fungsi tanpa parameter.
• Bentuk umum:
tipeData namaFungsi() • Contoh:
int JumlahIsi()
double Random()
char* Nama()
void Clear()
• Penulisan header fungsi tanpa parameter diawali dengan tipe data
dan diikuti dengan nama fungsi, kurung buka, dan kurung tutup
Ex:
#include<iostream.h> #include<conio.h> int x,y; int Tambah() {return x + y; }
int Kali() {
return x * y; }
float Bagi() {
return x / y; }
int Kurang() {
return x - y; }
main() {
cout << "x = "; cin >> x;
cout << "y = "; cin >> y;
cout << "x+y = " << Tambah() << endl;
cout << "x-y = " << Kurang() << endl;
cout << "xy = " << Kali() << endl; cout << "x/y = " << Bagi() << endl;
Lat:
Jawab:
#include<iostream.h>#include<conio.h> float Kuadrat(float x); int main()
{
float x;
cout<<"Masukan nilai:"; cin>>x;
cout<<"Hasil Kuadratnya:"<<Kuadrat(x); getch();
return 0; }
float Kuadrat(float x) {
Header Fungsi
dengan Parameter
• Bentuk umum:
tipeData namaFungsi ( <Daftar_parameter> ) • Contoh:
int Jumlahkan(int a, int b)
double ArcCos(double x)
void List(int n, char* header)
Ex:
#include<iostream.
h>
#include<conio.h>
int Tambah(int a, int
b)
{
return a+b;
}
int Kali(int a, int b)
{
return a*b;
}
main() { int x,y;cout<<"x = "; cin>>x;
cout<<"y = "; cin>>y;
cout<<"x+y = "
<<Tambah(x,y)<<endl; cout<<"xy = "
<<Kali(x,y)<<endl; getch();
Parameter Formal
dan Aktual
• Jika sebuah fungsi memiliki parameter
yang berada di dalam kurung( ),
parameter tersebut disebut sebagai
parameter formal,
Ex:
#include<iostream.
h>
#include<conio.h>
int Tambah(int a, int
b)
{
return a+b;
}
int Kali(int a, int b)
{
return a*b;
}
main() { int x,y;cout<<"x = "; cin>>x;
cout<<"y = "; cin>>y;
cout<<"x+y = "
<<Tambah(x,y)<<endl; cout<<"xy = "
<<Kali(x,y)<<endl; getch();
}
Parameter Formal
Nilai default dalam
argument
• Ketika mendeklarasikan fungsi,
maka tiap-tiap parameter yang
dideklarasikan dapat diberikan
sebuah nilai default. Nilai default
ini akan dipergunakan bila dalam
pemanggilan fungsi, tidak
Ex:
#include<iostream.h> #include<conio.h>
bagi (int a, int b=2) { int r;
r=a/b;
return (r); } main()
{
cout<<bagi(12); cout<<endl;
cout<<bagi(20,4); getch();
}
Hasilnya : 6
Fungsi Rekursif
• suatu fungsi yang memanggil
dirinya sendiri, artinya fungsi
Ex:
#include<iostream.h> #include<conio.h>
void rekursif_angka(int); main(){
int nomor;
cout<<"Silahkan masukan nilainya :"; cin>>nomor;
rekursif_angka(nomor); getch();
}
void rekursif_angka(int n){ if (n>=1){
rekursif_angka(n-1); cout<<n<<endl; }
Jawab:
#include<iostream.h> #include<conio.h>
void rekursif_angka_terbalik(int); main(){
int nomor;
cout<<"Silahkan masukan nilainya :"; cin>>nomor;
rekursif_angka_terbalik(nomor); getch();
}
void rekursif_angka_terbalik(int n){ if (n>=1){
cout<<n<<endl;
rekursif_angka_terbalik(n-1); }