0% menganggap dokumen ini bermanfaat (0 suara)
87 tayangan21 halaman

Modul III - Fungsi

Modul ini membahas tentang fungsi dalam bahasa C/C++. Terdapat penjelasan tentang tujuan modul yaitu mahasiswa mengenal fungsi dan bisa membuat program procedural dengan C/C++. Dilanjutkan dengan penjelasan dasar teori tentang fungsi, deklarasi fungsi, parameter, jenis variabel, dan contoh program fungsi. Modul ini juga membahas permasalahan yang dikerjakan dengan metode fungsi seperti luas segitiga, volume balok, luas perse

Diunggah oleh

Aan Junior
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
87 tayangan21 halaman

Modul III - Fungsi

Modul ini membahas tentang fungsi dalam bahasa C/C++. Terdapat penjelasan tentang tujuan modul yaitu mahasiswa mengenal fungsi dan bisa membuat program procedural dengan C/C++. Dilanjutkan dengan penjelasan dasar teori tentang fungsi, deklarasi fungsi, parameter, jenis variabel, dan contoh program fungsi. Modul ini juga membahas permasalahan yang dikerjakan dengan metode fungsi seperti luas segitiga, volume balok, luas perse

Diunggah oleh

Aan Junior
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 21

Modul 3 Fungsi

MODUL 3
FUNGSI
A. Tujuan
1. Mahasiswa mengenal function dalam bahasa C / C++.
2. Mahasiswa bisa membuat program procedural dengan bahasa C / C++.
B. Dasar Teori

Fungsi
Pada pemrograman C++ selalu terdapat sebuah fungsi utama atau sub-

program yakni void main(). Penamaan modul memiliki karakteristik yang


sama dengan penamaan variabel dengan fungsi program akan menjadi lebih
efisien dan fleksibel. Fungsi adalah suatu blok kode yang melakukan tugas
tertentu atau suatu blok instruksi yang dieksekusi ketika dipanggil dari bagian lain
dalam suatu program.
Pada umumnya fungsi memerlukan masukan yang dinamakan argument
atau parameter. Hasil akhir dari fungsi akan berupa sebuah nilai.
Berikut bagan konsep sebuah fungsi :
Fungsi main()

Fungsi a()

Fungsi b()

Fungsi c()

Fungsi c1()

Fungsi c2()

Gambar 3.1 Bagan konsep sebuah fungsi


Berikut source code dari suatu fungsi :
Penentuan_tipe nama_fungsi (daftar parameter)
Deklarasi parameter {
Isi fungsi
}

Praktikum algoritma dan pemrograman 2016

Modul III - 1

Modul 3 Fungsi
Setiap fungsi yang dipanggil di dalam program harus didefinisikan. Letaknya bisa dimana
saja. Khusus untuk fungsi yang disediakan di system, definisinya sebenarnya ada dalam
pustaka, yang akan digabungkan dengan program sewaktu proses linking.

Deklarasi Fungsi

Deklarasi fungsi atau sering disebut dengan prototype fungsi dimaksudkan untuk
mendeklarasikan fungsi agar dapat dipanggil. Deklarasi fungsi berupa :
1) Tipe nilai balik.
2) Nama fungsi.
3) Jumlah dan tipe argument.
Dan diakhiri dengan titik koma, sebagaimana pendeklarasian variabel.
Sebagai contoh :
long kuadrat(long);

Pada contoh ini fungsi kuadrat() mempunyai argument bertipe long dan nilai
balik bertipe long.
int maks(int a,intb);

Pada contoh ini fungsi maks() mempunyai dua argument bertipe integer
dan nilai balik bertipe integer juga.
void garis();

Pada contoh ini fungsi garis() tidak memiliki argument dan nilai baliknya
tidak ada (void).

Penggolongan Variabel
Variabel lokal atau Local variable adalah sebuah variabel sederhana yang

dideklarasikan di dalam sebuah blok program. Ini bisa diakses hanya dari dalam blok
itu sendiri. Karena bagian dari fungsi itu sendiri adalah blok, variabel dideklarasikan
ke dalam sebuah fungsi yang local di fungsi itu. Mereka ada hanya ketika fungsi itu
sedang dieksekusi. Sebuah formal parameter (argument) dari fungsi akan menjadi
lokal di fungsi itu. Variabel global memiliki ruang lingkup sepanjang semua program
dijalankan maka variabel global akan tetap dikenali dimanapun bagian atau blok
dalam bagian kode program dijalankan.
Contoh :
Praktikum algoritma dan pemrograman 2016

Modul III - 2

Modul 3 Fungsi
int f, n;
int factorial()
{
if (n < 0) return 0;
f = 1;
while (n > 1)
f *= n--;
return f;

Parameter
Parameter fungsi digunakan untuk mengirimkan parameter (nilai) ke suatu fungsi.

Parameter berbeda dengan argumen. Parameter digunakan untuk memasukkan input


pada sebuah tubuh fungsi yang ditulis di luar fungsi main

, sedangkan argumen

merupakan masukan pada sebuah fungsi ketika fungsi tersebut dipanggil pada sebuah
fungsi main. Parameter fungsi harus bertipe data tertentu. [1] Terdapat 2 jenis parameter,
yaitu:
1. Parameter formal: Parameter yang ditulis pada deklarasi fungsi.
2. Parameter aktual: Parameter yang dimasukkan dalam program pemanggil fungsi
tersebut, sering disebut dengan argumen.
Pengiriman parameter ke suatu fungsi dapat dilakukan dengan dua cara, yaitu
pengiriman secara nilai (by value) dan pengiriman secara acuan (by reference).
1. Pengiriman Parameter Secara Nilai (By Value)
Pengiriman parameter secara nilai mempunyai karakteristik sebagai berikut:

Nilai parameter yang dikirim ke fungsi tidak mempengaruhi nilai parameter pada

bagian program yang memanggil fungsi tersebut.


Pengiriman parameter secara nilai adalah pengiriman searah, yaitu dari bagian

program yang memanggil fungsi ke fungsi yang dipanggil.


Pengiriman parameter secara nilai dapat dilakukan untuk suatu ungkapan,
variabel, elemen array atau konstanta.

2. Pengiriman Parameter Secara Acuan (by reference)


Pengiriman parameter secara nilai mempunyai karakteristik sebagai berikut:

Praktikum algoritma dan pemrograman 2016

Modul III - 3

Modul 3 Fungsi
a) Nilai parameter yang dikirim ke fungsi tidak mempengaruhi nilai parameter pada
bagian program yang memanggil fungsi tersebut.
b) Pengiriman parameter secara nilai adalah pengiriman searah, yaitu dari bagian
program yang memanggil fungsi ke fungsi yang dipanggil.
c) Pengiriman parameter secara nilai dapat dilakukan untuk suatu ungkapan, variabel,
elemen array atau konstanta.

Fungsi tanpa nilai balik


Fungsi tanpa nilai balik adalah fungsi yang dimana untuk menampilkan

suatu keterangan saja. Penggunaan fungsi tanpa nilai balik salah satunya
menggunakan void.

Fungsi dengan nilai balik


Fungsi dengan tanda balik adalah suatu fungsi yang dapat

mengembalikan suatu nilai ke dalam fungsi utama. Dalam membuat fungsi,


harus didefinisikan tipe data dari nilai yang akan dikembalikan.
Contoh Program Fungsi pada C++ :
// Menampilkan pesan
#include <iostream>
#include <conio>
void printmessage ()
{
cout << "I'm a function!";
}
void main ()
{
printmessage ();
getch();
}
#include<iostream.h>
#include<conio.h>
int addition (int a, int b){
int r;
r=a+b;
return (r);
}
void main ()
{

Praktikum algoritma dan pemrograman 2016

Modul III - 4

Modul 3 Fungsi

int z;
z = addition (5,3);
cout << "The result is " << z;
getch();

C. Permasalahan
Buatlah dengan metode fungsi yaitu
1.
2.
3.
4.

Luas Segitiga
Volume balok
Luas Persegi
Luas Layang-layang

Praktikum algoritma dan pemrograman 2016

Modul III - 5

Modul 3 Fungsi
Flowchart :
Source Code :
#include <iostream.h>
#include <stdlib.h>
#include <conio.h>
int al, ti, lp, pa, le,vb, lse, si, ll, d1,d2;
void segitiga()
{
cout<<"============================\n";
cout<<"\tLuas Segitiga\n\n";
cout<<"Masukkan nilai alas : ";
cin>>al;
cout<<"Masukkan nilai tinggi : ";
cin>>ti;
lse=al*ti/2;
cout<<"Luas segitiga : "<<lse;
cout<<endl;
cout<<"============================\n";
cout<<endl;
}
void balok()
{
cout<<"\tVolume Balok\n";
cout<<"Masukkan nilai panjang : ";
cin>>pa;
cout<<"Masukkan nilai lebar : ";
cin>>le;
cout<<"Masukkan nilai tinggi : ";
cin>>ti;
vb=pa*le*ti;
cout<<"Volume Balok : "<<vb;
cout<<endl;
cout<<"============================\n";
cout<<endl;
}
void persegi()
{
cout<<"\tLuas Persegi\n";
cout<<"Masukkan nilai sisi : ";
cin>>si;
lp=si*si;
cout<<"Luas Persegi : "<<lp;
cout<<endl;
cout<<"============================\n";
cout<<endl;
}

Praktikum algoritma dan pemrograman 2016

Modul III - 6

Modul 3 Fungsi

void layang()
{
cout<<"\tLuas Layang-layang\n";
cout<<"Masukkan nilai diagonal 1 : ";
cin>>d1;
cout<<"Masukkan nilai diagonal 2 : ";
cin>>d2;
ll=d1*d2/2;
cout<<"Luas Layang-layang : "<<ll;
cout<<endl;
cout<<"============================\n";
cout<<endl;
}
void main()
{
char pilih;
char y;
char n;
do
{
clrscr();
cout<<"=========================\n";
cout<<"\tMenu Pilihan\n\n";
cout<<"1. Luas Segitiga\n";
cout<<"2. Volume balok\n";
cout<<"3. Luas Persegi\n";
cout<<"4. Luas Layang-layang\n\n";
cout<<"=========================\n";
cin>>pilih;
clrscr();
cout<<"============================\n";
cout<<"\|\tPilihan Anda
|\n";
cout<<"============================\n";
switch(pilih)
{
case'1':
segitiga();
cout<<"Anda ingin Mengulang![y/n] ";
cin>>y;
break;
case'2':
balok();
cout<<"Anda ingin Mengulang![y/n] ";
cin>>y;
break;
case'3':
persegi();
cout<<"Anda ingin Mengulang![y/n] ";
cin>>y;
break;
case'4':
layang();

Praktikum algoritma dan pemrograman 2016

Modul III - 7

Modul 3 Fungsi
cout<<"Anda ingin Mengulang![y/n] ";
cin>>y;
break;
default:
cout<<"Pilihan tidak ada\n";
cout<<"Anda ingin Mengulang![y/n]";
cin>>y;
cin>>n>>"silahkan exit program";
clrscr();
}
}
while(y=='y'||y=='Y'||n=='n'||n=='N');
cout<<"Silahkan exit program !!!\n\n";
system("pause");

}
getch();

Praktikum algoritma dan pemrograman 2016

Modul III - 8

Modul 3 Fungsi

Hasil Compile :

Praktikum algoritma dan pemrograman 2016

Modul III - 9

Modul 3 Fungsi

Praktikum algoritma dan pemrograman 2016

Modul III - 10

Modul 3 Fungsi

D. Analisa Data
1.

#include <iostream.h>
#include <stdlib.h>
#include <conio.h>

Praktikum algoritma dan pemrograman 2016

Modul III - 11

Modul 3 Fungsi
Script program diatas merupakan bagian header yakin berperan sebagai library dari
statement yang ada di dalam program, supaya statement yang digunakan pada program
dapat di kenal.

#include

<iostream.h>

merupakan file header program yang

mendeklarasikan satement cout dan cin yakni statement yang

bertugas sebagai statement input output (I/O) pada program.


#include <stdlib.h> merupakan file header yang berfungsi untuk

operasi pembanding dan operasi konversi.


#include <conio.h> merupakan file header yang berfungsi untuk
menampilkan hasil antarmuka kepada pengguna.

2
.

void
void
void
void
void

segitiga()
balok()
persegi()
layang()
main()

Script program diatas merupakan bagian dari pendeklarasian fungs-fungsi


yang akan di gunakan dalam dalam program.

void main()

Script di atas merupakan bagian dari pendeklarasian fungsi utama.


Fungsi utama ini berisi kode-kode atau statement yang akan digunakan
untuk menyelesaikan masalah tertentu. Fungsi utama ini diawali dengan
tanda kurung kurawal buka { dan diakhiri dengan tanda kurung kurawal
tutup } , yang dimana pada disela-sela tanda tersebut berisikan kodekode atau statement yang akan dieksekusi dan merupakan bagian tubuh
dari fungsi utama.

void segitiga()

Merupakan script pendeklarasian sebuah fungsi yang bernama fungsi


segitiga. Cara penulisan dan cara kerja fungsi ini sama dengan fungsi
utama di atas.

void balok()

Merupakan script pendeklarasian sebuah fungsi yang bernama


fungsi balok. Cara penulisan dan cara kerja fungsi ini sama dengan

fungsi utama di atas.


void persegi()

Praktikum algoritma dan pemrograman 2016

Modul III - 12

Modul 3 Fungsi
Merupakan script pendeklarasian sebuah fungsi yang bernama
fungsi persegi. Cara penulisan dan cara kerja fungsi ini sama dengan
fungsi utama di atas.

void layang()

Merupakan script pendeklarasian sebuah fungsi yang bernama


fungsi layang dan bertipe float. cara penulisan dan cara kerja fungsi
ini sama dengan fungsi utama di atas..
3
.

int al, ti, lp, pa, le,vb, lse, si, ll, d1,d2;
char pilih;
char y;
char n;

Script program diatas merupakan bagian dari pendeklarasian variable yang


bertipe int dan char yang dapat di gunakan pada seluruh bagian program.
4
.

switch(pilih){
case'1':segitiga();break;
case'2':balok();break;
case'3':persegi();break;
case'4':layang();break;
default:cout<<"Pilihan tidak ada\n";}

Script program diatas merupakan instruksi yang digunakan untuk memilih


fungsi yang akan di tuju. Saat pilih bernilai 1 maka program akan menunjuk fungsi
yang bernama segitiga, saat pilih bernilai 2 maka program akan menunjuk fungsi
yang bernama balok,dan begitu seterusnya sampai sampai nilai masuk tidak terdapat
dalam case maka akan langsung mengeksekusi statement pada bagian default.
5
.

Do
{
}
while(y=='y'||y=='Y'||n=='n'||n=='N');

Script program diatas merupakan instruksi yang digunakan untuk mengulang


program. Jika menekan huruf y pada keyboard maka program akan mengulang
dan menuju ke menu pilihan, dan jika menekan huruf n pada keyboard maka
muncul notifikasi untuk menutup program.

Praktikum algoritma dan pemrograman 2016

Modul III - 13

Modul 3 Fungsi
6
.

cout<<"\tMenu Pilihan\n\n";
cout<<"1. Luas Segitiga\n";
cout<<"2. Volume balok\n";
cout<<"3. Luas Persegi\n";
cout<<"4. Luas Layang-layang\n\n";
cin>>pilih;
Perintah cout di atas merupakan

perintah yang digunakan untuk

menampilkan masukkan pada layar, sedangkan perintah cin merupakan perintah


yang digunakan untuk memberi masukkan variable dari keyboard, yang akan di
tampilkan pada layar.
7
.

system("pause");
getch();

Fungsi system("pause") dalam program ini adalah untuk menghentikan


program untuk sementara dan menampilkan pesan Press any to continue .
Fungsi getch() dalam program ini adalah untuk menahan tampilan layar saat
eksekusi program.

E. Kesimpulan
1. Fungsi adalah suatu blok kode yang melakukan tugas tertentu atau suatu blok
instruksi yang dieksekusi ketika dipanggil dari bagian lain dalam suatu program.
2. Fungsi dapat memisahkan langkah-langkah dari satu atau lebih fungsi, maka
fungsi utama menjadi lebih pendek, jelas dan mudah dimengerti. Fungsi harus
Praktikum algoritma dan pemrograman 2016

Modul III - 14

Modul 3 Fungsi
memiliki nama dan parameter sebagai pembeda antara fungsi yang satu dengan
fungsi yang lain.
3. Program procedural merupakan program yang terstruktur dengan rapi. Terdapat
dua cara dalam penulisan fungsi, yang pertama kita menuliskan fungsi di atas
fungsi utama(main). Yang kedua kita menuliskan fungsi dibawah fungsi
utama(main), namun harus dikenalkan dulu di awal program menggunakan
prototype atau menggunakan deklarasi global dari fungsi tersebut agar fungsi
tersebut dapat dikenali oleh fungsi utama (main) dan bahkan dapat dikenali
setiap fungsi.
4. Dalam fungsi utama dapat digunakan proses perulangan maupun control untuk
mengenali fungsi dinamis yang banyak.
5. Dalam pembuatan fungsi dinamis harus jelas masukan dan keluarannya sehingga
ketika di panggil pada fungsi utama dapat dijalankan.

Tugas Pendahuluan
1. Buatlah sebuah program biodata mahasiswa dgn menggunakan "fungsi" dan ketentuan
inputannya sbb:
A. Nama
B. Ttl

Praktikum algoritma dan pemrograman 2016

Modul III - 15

Modul 3 Fungsi
C. Alamat
D. Universitas
E. Fakultas/prodi
F. Semester
Source code
#include <iostream.h>
#include <conio.h>
void nama ()
{
cout<<"Halbat Akmaral Aziad"<<endl; }
void ttl ()
{
cout<<"Sakra, 30 Agustus 1996"<<endl; }
void univ ()
{
cout<<"Universitas Mataram"<<endl; }
void fpro ()
{
cout<<"Teknik/Teknik Elektro"<<endl; }
void smt ()
{
cout<<"2"<<endl; }
int main ()
{
cout<<"Nama
: ";nama ();
cout<<"Tempat, tanggal lahir : ";ttl ();
cout<<"Universitas
: ";univ ();
cout<<"Fakultas/Prodi
: ";fpro ();
cout<<"Semester
: ";smt ();
getch ();
}

Hasil compile :

Tugas
Buatlah program function untuk menampilkan macam-macam pekerjaan.
Source code :
#include <iostream.h>
#include <conio.h>
#include <stdlib.h>

Praktikum algoritma dan pemrograman 2016

Modul III - 16

Modul 3 Fungsi

void polisi()
{
cout<<"1. Memelihara keamanan dan ketertiban masyarakat\n";
cout<<"2. Menegakkan hukum\n";
cout<<"3. Memberikan perlindunga, pengayoman, dan pelayanan
kepada masyarakat\n";
cout<<endl;
}
void pedagang()
{
cout<<"Menjual barang / kebutuhan masyarakat";
cout<<endl;
}
void nelayan()
{
cout<<"Menangkap dan menjual ikan";
cout<<endl;
}
void dokter()
{
cout<<"1. Memeriksa Pasien\n";
cout<<"2. Memberi resep obat\n";
cout<<endl;
}
void pilot()
{
cout<<"1. Menerbangkan pesawat\n";
cout<<"2. Menjaga keselamatan para penumpang\n";
cout<<endl;
}
void pramugari()
{
cout<<"1. Memberi pengarahan kepada penumpang\n";
cout<<"2. Melayani para penumpang\n";
cout<<endl;
}
void peragawan()
{
cout<<"Memamerkan baju hasil rancangan desainer di atas
panggung";
cout<<endl;
}
void sekretaris()
{
cout<<"1. Membantu pemimpin perusahaan dalam melaksanakan
tugas\n";
cout<<"2. Mengatur jadwal pertemuan\n";
cout<<"3. Memberikan ide-ide\n";
cout<<"dan lain-lain\n";
cout<<endl;

Praktikum algoritma dan pemrograman 2016

Modul III - 17

Modul 3 Fungsi
}
void eva()
{
cout<<"Membuat es krim";
cout<<endl;
}
void albat()
{
cout<<"Ketua kelompok";
cout<<endl;
}
void akbar()
{
cout<<"anggota kelompok";
cout<<endl;
}
void main()
{
char pilih;
char y;
char n;
do
{
clrscr();
cout<<"=========================\n";
cout<<"\tMenu Pekerjaan\n\n";
cout<<"1. Polisi\n";
cout<<"2. Pedagang\n";
cout<<"3. Nelayan\n";
cout<<"4. Dokter\n";
cout<<"5. Pilot\n";
cout<<"6. Pramugari\n";
cout<<"7. Peragawan\n";
cout<<"8. Sektretaris\n";
cout<<"9. Eva\n";
cout<<"10. Albat\n";
cout<<"11. Akbar\n";
cout<<"=========================\n";
cin>>pilih;
clrscr();
cout<<"========================================\n";
cout<<"\|\t\tPilihan Anda
|\n";
cout<<"========================================\n";
switch(pilih)
{
case'1':
polisi();
cout<<"Anda ingin Mengulang![y/n] ";
cin>>y;
break;
case'2':

Praktikum algoritma dan pemrograman 2016

Modul III - 18

Modul 3 Fungsi
pedagang();
cout<<"Anda ingin Mengulang![y/n] ";
cin>>y;
break;
case'3':
nelayan();
cout<<"Anda ingin Mengulang![y/n] ";
cin>>y;
break;
case'4':
dokter();
cout<<"Anda ingin Mengulang![y/n] ";
cin>>y;
break;
case'5':
pilot();
cout<<"Anda ingin Mengulang![y/n] ";
cin>>y;
break;
case'6':
pramugari();
cout<<"Anda ingin Mengulang![y/n] ";
cin>>y;
break;
case'7':
peragawan();
cout<<"Anda ingin Mengulang![y/n] ";
cin>>y;
break;
case'8':
sekretaris();
cout<<"Anda ingin Mengulang![y/n] ";
cin>>y;
break;
case'9':
eva();
cout<<"Anda ingin Mengulang![y/n] ";
cin>>y;
break;
case'10':
albat();
cout<<"Anda ingin Mengulang![y/n] ";
cin>>y;
break;
case'11':
akbar();
cout<<"Anda ingin Mengulang![y/n] ";
cin>>y;
break;
default:
cout<<"Pilihan tidak ada\n";
cout<<"Anda ingin Mengulang![y/n]";
cin>>y;
cin>>n>>"silahkan exit program";
clrscr();
}
}

Praktikum algoritma dan pemrograman 2016

Modul III - 19

Modul 3 Fungsi
while(y=='y'||y=='Y'||n=='n'||n=='N');
cout<<"Silahkan exit program !!!\n\n";
system("pause");
}
getch();

Hasil Compile :

DAFTAR PUSTAKA
[1]Anonim.2016.Modul Praktikum Algoritma dan Pemrograman.Laboratorium Informatika
Fakultas Teknik Jurusan Teknik Elektro UNIVERSITAS MATARAM
Praktikum algoritma dan pemrograman 2016
20

Modul III -

Modul 3 Fungsi
[2]Senja.Awan.PENGENALAN BAHASA C++.13 mei 2016
http://penesenja.blogspot.co.id/2014/05/pengenalan-bahasa-c.html
[3]Senja.Awan.Fungsi dalam C++.13 mei 2016
http://penesenja.blogspot.co.id/2014/05/pengenalan-bahasa-c.html
[4]Rifansyah, Gandi.FUNGSI/FUNCTION.13 mei 2016.
http://gandirifansyah.blogspot.co.id/2013/05/fungsi-function.html

Praktikum algoritma dan pemrograman 2016

Modul III - 21

Anda mungkin juga menyukai