Anda di halaman 1dari 12

VIII-1

BAB VIII

FUNGSI

Nama : Rendi Agata Winda Sritama


NIM : 2018100
Kelas : C
Pengajar : Nofia Hidayati (1918086)

VIII.1 Landasan Teori

VIII.1.1 Non Void (Fungsi dengan Nilai Kembalian)


Fungsi merupakan statemen yang dikelompokkan
menjadi satu bagian kode (blok program) untuk
menyelesaikan tugas spesifik tertentu. Intinya kita ingin
membagi-bagi program dari program utama (main
program) sehingga program dapat lebih rapih dan juga lebih
terstruktur dan dapat dijalankan berulang kali.
Dalam sebuah program C++ minimal kita memiliki 1
method, karena pada dasarnya main() juga merupakan sebuah
method. Method main adalah program utama kita.
Jenis-jenis fungsi ada dua yaitu:
1. Non void adalah fungsi dengan nilai balik atau fungsi
dengan return value ketika fungsi dipanggil..
2. Void adalah fungsi yang tidak mengembalikan nilai atau
fungsi yang tidak menghasilkan nilai balik ketika fungsi
dipanggil
Keuntungan memakai fungsi :
 Menguraikan tugas pemrograman rumit menjadi langkah-
langkah yang lebih sederhana atau kecil.
 Mengurangi duplikasi kode (kode yang sama ditulis
berulang-ulang) dalam program.
VIII-2

Fungsi non-void  disebut juga function. Disebut non-


void karena mengembalikan nilai kembalian yang berasal dari
keluaran hasil proses function tersebut .
Ciri-ciri dari jenis fungsi non-void adalah sebagai
berikut:
 Ada keyword return
 Ada tipe data yang mengawali fungsi
 Tidak ada keyword void
 Memiliki nilai kembalian

Bentuk umumnya:
tipe_data_kembalian nama_fungsi
(parameter1, parameter2,…)
{
/* Badan Fungsi */
statemen_yang_akan_dilakukan;
return nilai_yang_akan_dikembalikan;
}
Dari bentuk umum tersebut, yang perlu dijelaskan, yaitu:

a. Tipe_nilai_balik
Tipe nilai balik adalah tipe data dari nilai yang akan
dikembalikan oleh fungsi. Khusus untuk Fungsi yang tidak
ditulis tipenya maka akan dianggap bertipe int atau char.
b. nama_fungsi
Nama fungsi adalah nama yang akan digunakan
dalam pemanggilan. Pemanggilan fungsi harus
disesuaikan dengan daftar parameter yang disertakan pada
saat pendefinisian fungsi.
c. parameter
Parameter itu sendiri merupakan variabel berisi
nilai yang akan disertakan ke dalam proses yang dilakukan
oleh fungsi. Fungsi bisa saja memiliki satu atau lebih
parameter. Jika tak ada parameter, judul fungsi berupa:
tipe_nilai_balik nama_fungsi()
VIII-3

d. badan fungsi
Kode atau statemen-statemen yang akan
dilaksanakan di dalam fungsi guna menyelesaikan tugas
spesifik tertentu. Untuk bagian ini harus diawali dengan
tanda { dan diakhiri dengan tanda }.

A. Fungsi dengan paramater


Fungsi dengan parameter yang mana parameter
ini akan digunakan sebagai nilai masukkan (input)
dalam sebuah fungsi. Nilai tersebut kemudian akan
diproses oleh fungsi untuk menghasilkan sebuah
nilai kembalian (return value).
Secara teori, parameter yang terdapat pada
pendefinisian sebuah fungsi disebut dengan
parameter formal, sedangkan parameter yang
terdapat pada saat pemanggilan disebut dengan
parameter aktual.
B. Fungsi tanpa parameter
Fungsi tanpa parameter bisa didefinisikan
sebagai fungsi yang setiap kali pemanggilan fungsi
tersebut, hasil yang didapatkan selalu bernilai tetap.

VIII.2 Langkah – Langkah Praktikum

1. Buka Aplikasi Dev C++.

2. Buka Modul Praktikum Algoritma dan Pemrograman.

3. Menjalankan script dari modul.


VIII-4

VIII.3 Latihan Praktikum ke-1:

Latihan 1

1. Source code :
#include <iostream>
using namespace std;

double hitungLuas(float x, float y){


double luas = 0.5*x*y;
return luas;
}

int hitungKeliling(){
int hasil, a,b,c;
cout<<"Masukkan sisi segitiga 1: ";cin>>a;
cout<<"Masukkan sisi segitiga 2: ";cin>>b;
cout<<"Masukkan sisi segitiga 3: ";cin>>c;
hasil = a+b+c;
return hasil;
}
main(){
float alas,tinggi;

cout << "=====Menghitung Luas dan Keliling


Segitiga=====" << endl << endl;
cout << "Masukkan alas : ";
cin >> alas;
cout << "Masukkan tinggi : ";
cin >> tinggi;
cout<< endl << "Jadi, luas segitiga adalah " <<
hitungLuas (alas,tinggi) << " cm2";
cout<<endl<<endl;
cout<< endl << "Jadi, keliling segitiga adalah " <<
hitungKeliling() << " cm2";
}

2. Tampilan Program :.
VIII-5

1
Gambar Latihan Praktikum ke-1 (Mencari luas dan keliling)

3. Analisa Program

Pada kode diatas, variabel x dan y di atas sebagai parameter


masukkan. Selain itu, x dan y disebut dengan parameter formal,
sedangkan alas dan tinggi disebut dengan parameter actual,yang akan
memanggil parameter masukkan tersebut.

VIII.4 Latihan Praktikum ke-2:

Latihan 2

1. Source code :
#include <iostream>
using namespace std;

string P ( string p)
{
return p;
}
string bukanP()
{
string P;
P= "Lab.Rekayasa Perangkat Lunak ";
return P;
}
int main ()
{
string a;
cout<<"Lab.Rekayasa Perangkat Lunak"<<a;
cout<<P(a)<<endl;
cout<<bukanP();
return 0;
}

2. Tampilan Program :.
VIII-6

Gambar Latihan Praktikum ke-2 (kalimat dengan parameter dan bukan


parameter)

3. Analisa Program
Pada kode diatas, variabel P di atas sebagai parameter masukkan.
Selain itu, P disebut dengan parameter formal, sedangkan a disebut
dengan parameter actual,yang akan memanggil parameter masukkan
tersebut.

VIII.5 Latihan Praktikum ke-3:

Latihan 3

1. Source code :
#include <iostream>
using namespace std;

int fungsi (int x)


{
int hasil= x*x -5*x + 5;
return hasil;
}
int main ()
{
int a;
cout<<"Nilai yang dimasukkan :";
cin>>a;
cout<<fungsi(a);
return 0;
}

2. Tampilan Program :.
VIII-7

Gambar 1.3 Tugas Praktikum ke-2 (menghitung fungsi)

3. Analisa Program
Pada kode diatas, variabel X di atas sebagai parameter
masukkan. Selain itu, X disebut dengan parameter formal,dengan fungsi
x*x -5*x + 5, sedangkan a disebut dengan parameter actual,yang akan
memanggil parameter masukkan tersebut. Pada saat pemanggilan fungsi
jumlah parameter aktual harus sama dengan jumlah parameter formal

VIII.6 Tugas Praktikum ke-1:

Tugas 1

1. Source code :
#include <iostream>
using namespace std;

double hitung (double x,double d)


{
double h;
h=x*d/100;

}
int main ()
{
int b,c,e,byk;
string a;
cout<<"Nama Barang = :";
cin>>a;
cout<<"Harga Barang = :";
cin>>b;
cout<<"Diskon (%)";
cin>>c;
e=b-hitung(b,c);
cout<<"Harga Setelah Diskon ="<<e<<endl;
cout<<"Msukkan Banyak Barang =";cin>>byk;
cout<<"Total ="<<e*byk;
return 0;
VIII-8

2. Tampilan Program :.

Gambar 1.4 Tugas Praktikum ke-3 (Menghitung Total)

3. Analisa Program
Pada kode diatas, variabel x dan d di atas sebagai parameter
masukkan. Selain itu, x dan d disebut dengan parameter formal,dengan
fungsi h=x*d/100, sedangkan b,c disebut dengan parameter actual,yang
akan memanggil parameter masukkan tersebut.

VIII.7 Tugas Praktikum ke-2:

Tugas 2

1. Source code :
#include<iostream>
using namespace std;

float tambah(float a, float b){


float hasil;
hasil=a+b;
return hasil;
}

float kurang(float a, float b){


float hasil;
hasil=a-b;
return hasil;
}

float kali(float a, float b){


float hasil;
hasil=a*b;
VIII-9

return hasil;
}

float bagi(float a, float b){


float hasil;
hasil=a/b;
return hasil;
}

int main(){
int pilih;
float a,b;
cout<<"Masukan angka pertama : ";
cin>>a;
cout<<"Masukan angka kedua : ";
cin>>b;
cout<<"[1] Pertambahan"<<endl;
cout<<"[2] Pengurangan"<<endl;
cout<<"[3] Perkalian"<<endl;
cout<<"[4] Pembagian"<<endl;

while (pilih>=0){
cout<<"Pilih Perhitungan : ";cin>>pilih;
switch(pilih){
case 1:
cout<<"Hasil :
"<<tambah(a,b)<<endl;
exit(1);
case 2:
cout<<"Hasil :
"<<kurang(a,b)<<endl;
exit(2);
case 3:
cout<<"Hasil : "<<kali(a,b)<<endl;
exit(3);
case 4:
cout<<"Hasil : "<<bagi(a,b)<<endl;
exit(4);
default:
cout<<"Error"<<endl;
}
}
}
VIII-10

2. Tampilan Program :.

Gambar 1.4 Tugas Praktikum ke-3 (Program Perhitungan)

3. Analisa Program
Pada kode diatas, variabel x dan y di atas sebagai parameter
masukkan. Selain itu, x dan y disebut dengan parameter formal,dengan
fungsi menggunakan switch-case pertama hasil = x+y,kedua hasil = x-
y,ketiga hasil = x * y dan keempat hasil = x / y,

VIII.8 Tugas Praktikum ke-3:

Tugas 3

1. Source code :
#include <iostream>
using namespace std;

double hitungLuas(float x, float y){


double luas = x * y;
return luas;
}

int hitungKeliling(){
int hasil, a,b;

cout<<"=========================================
====="<<endl;
cout<<"============Keliling Persegi
Panjang=========="<<endl;
VIII-11

cout<<"=========================================
====="<<endl<<endl;
cout<<"Masukkan Panjang: ";cin>>a;
cout<<"Masukkan Lebar : ";cin>>b;
hasil = 2*(a+b);
return hasil;
}
main(){
float panjang,lebar;

cout<<"=========================================
========"<<endl;
cout << "========Menghitung Luas Persegi
Panjang========" << endl;

cout<<"=========================================
========"<<endl<<endl;
cout << "Masukkan Panjang : ";
cin >> panjang;
cout << "Masukkan Lebar : ";
cin >> lebar;
cout<< endl << "Jadi, luas Persegi adalah " <<
hitungLuas (panjang,lebar) ;
cout<<endl<<endl;
cout<< endl << "Jadi, keliling segitiga adalah
" << hitungKeliling();
}

2. Tampilan Program :.
VIII-12

Gambar 1.4 Tugas Praktikum ke-3 (Pengenalan c++)


3. Analisa Program
Pada saat pemanggilan fungsi jumlah parameter aktual harus sama
dengan jumlah parameter formal.sedangkan variable a dan b sebagai
parameter masukkan tanpa menggunakan parameter massukkan dan
semua akan diproses untuk menghasilkan sebuah nilai kembalian

1.4 VI.8 Kesimpulan

1. Nama fungsi adalah nama yang akan digunakan dalam pemanggilan.


2. Void adalah fungsi yang tidak mengembalikan nilai atau fungsi yang tidak
menghasilkan nilai balik ketika fungsi dipanggil
3. Non void adalah fungsi dengan nilai balik atau fungsi dengan return value
ketika fungsi dipanggil

Anda mungkin juga menyukai