modul iii - fungsi
Post on 02-Mar-2018
245 Views
Preview:
TRANSCRIPT
-
7/26/2019 Modul III - Fungsi
1/21
Fungsi main()
Fungsi a() Fungsi b() Fungsi c()
Fungsi c1() Fungsi c2()
Modul 3 Fungsi
MODUL 3
FUNGSI
A. Tujuan
1. Mahasiswa mengenal functiondalam bahasa C / C++.
2. Mahasiswa bisa membuat programproceduraldengan 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 programakan men"adi 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. #asil akhir dari fungsi akan berupa sebuah nilai.
$erikut bagan konsep sebuah fungsi %
Gambar 3.1$agan konsep sebuah fungsi
$erikut source codedari suatu fungsi %
Penentuan_tipe nama_fungsi (daftar parameter)Deklarasi parameter {Isi fungsi}
Praktikum algoritma dan pemrograman 2016 Modul III - 1
-
7/26/2019 Modul III - Fungsi
2/21
Modul 3 Fungsi
&etiap fungsi yang dipanggil di dalamprogramharus didefinisikan. 'etaknya bisa dimana
sa"a. (husus untuk fungsi yang disediakan di system) definisinya sebenarnya ada dalam
pustaka) yang akan digabungkan dengan program sewaktu proses linking.
*eklarasi Fungsi
*eklarasi fungsi atau sering disebut dengan prototypefungsi dimaksudkan untuk
mendeklarasikan fungsi agar dapat dipanggil. *eklarasi fungsi berupa %
1 ,ipe nilai balik.
2 ama fungsi.
umlah dan tipe argument.
*an diakhiri dengan titik koma) sebagaimana pendeklarasian 0ariabel.
&ebagai ontoh %
long kuadrat(long);
Pada ontoh ini fungsi kuadrat! mempunyai argumentbertipe longdan nilai
balik bertipe long.
int maks(int a,intb);
Pada ontoh ini fungsi maks! mempunyai dua argument bertipe integer
dan nilai balik bertipe integer"uga.
void garis();
Pada ontoh ini fungsi garis! tidak memiliki argumentdan nilai baliknya
tidak ada void!.
Penggolongan 3ariabel
3ariabel lokal atau Local variableadalah sebuah 0ariabel sederhana yang
dideklarasikan di dalam sebuah blok program. 4ni bisa diakses hanya dari dalam blok
itu sendiri. (arena bagian dari fungsi itu sendiri adalah blok) 0ariabel dideklarasikan
ke dalam sebuah fungsi yang localdi fungsi itu. Mereka ada hanya ketika fungsi itu
sedang dieksekusi. &ebuah formal parameter argument dari fungsi akan men"adi
lokal di fungsi itu. 3ariabel global memiliki ruang lingkup sepan"ang semua program
di"alankan maka 0ariabel global akan tetap dikenali dimanapun bagian atau blok
dalam bagian kode program di"alankan.
Contoh %
Praktikum algoritma dan pemrograman 2016 Modul III - 2
-
7/26/2019 Modul III - Fungsi
3/21
Modul 3 Fungsi
int f, n;
int factorial()
{
if (n < ) return ;
f ! ";
#$ile (n % ")
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. 516,erdapat 2 "enis 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 ara) yaitu
pengiriman seara nilai (by value dan pengiriman seara auan by reference.
1. Pengiriman Parameter Seara Ni!ai "B# $a!ue%
Pengiriman parameter seara nilai mempunyai karakteristik sebagai berikut%
ilai parameter yang dikirim ke fungsi tidak mempengaruhi nilai parameter pada
bagian program yang memanggil fungsi tersebut.
Pengiriman parameter seara nilai adalah pengiriman searah) yaitu dari bagian
program yang memanggil fungsi ke fungsi yang dipanggil.
Pengiriman parameter seara nilai dapat dilakukan untuk suatu ungkapan)
0ariabel) elemen arrayatau konstanta.
&. Pengiriman Parameter Seara Auan "by reference%
Pengiriman parameter seara nilai mempunyai karakteristik sebagai berikut%
Praktikum algoritma dan pemrograman 2016 Modul III - 3
-
7/26/2019 Modul III - Fungsi
4/21
Modul 3 Fungsi
a ilai parameter yang dikirim ke fungsi tidak mempengaruhi nilai parameter pada
bagian program yang memanggil fungsi tersebut.b Pengiriman parameter seara nilai adalah pengiriman searah) yaitu dari bagian
program yang memanggil fungsi ke fungsi yang dipanggil. Pengiriman parameter seara nilai dapat dilakukan untuk suatu ungkapan) 0ariabel)
elemen arrayatau konstanta.
Fungsi tan'a ni!ai ba!i(
Fungsi tanpa nilai balik adalah fungsi yang dimana untuk menampilkan
suatu keterangan sa"a. Penggunaan fungsi tanpa nilai balik salah satunya
menggunakan void.
Fungsi )engan ni!ai ba!i(
Fungsi dengan tanda balik adalah suatu fungsi yang dapat
mengembalikan suatu nilai ke dalam fungsi utama. *alam membuat fungsi)
harus didefinisikan tipe data dari nilai yang akan dikembalikan.
Contoh Program Fungsi pada C++ %
enampilkan pesan*include
-
7/26/2019 Modul III - Fungsi
5/21
Modul 3 Fungsi
int 0; 0 ! addition (1,2); cout
-
7/26/2019 Modul III - Fungsi
6/21
Modul 3 Fungsi
Flowchart :
Source Code%
*include
-
7/26/2019 Modul III - Fungsi
7/21
Modul 3 Fungsi
void laang(){
cout
-
7/26/2019 Modul III - Fungsi
8/21
Modul 3 Fungsi
coutn!!); cout
-
7/26/2019 Modul III - Fungsi
9/21
Modul 3 Fungsi
#asil Compile%
Praktikum algoritma dan pemrograman 2016 Modul III - 9
-
7/26/2019 Modul III - Fungsi
10/21
Modul 3 Fungsi
Praktikum algoritma dan pemrograman 2016 Modul III - 10
-
7/26/2019 Modul III - Fungsi
11/21
Modul 3 Fungsi
D. Ana!isa Data
Praktikum algoritma dan pemrograman 2016 Modul III - 11
". *include
-
7/26/2019 Modul III - Fungsi
12/21
Modul 3 Fungsi
Script programdiatas merupakan bagian headeryakin berperan sebagai librarydari
statementyang ada di dalamprogram) supaya statement yang digunakan padaprogram
dapat di kenal. *include
-
7/26/2019 Modul III - Fungsi
13/21
Modul 3 Fungsi
Merupakan sript pendeklarasian sebuah fungsi yang bernama
fungsi persegi. Cara penulisan dan ara ker"a fungsi ini sama dengan
fungsi utama di atas. void laang()
Merupakan sript pendeklarasian sebuah fungsi yang bernama
fungsi layang dan bertipe float. ara penulisan dan ara ker"a fungsi
ini sama dengan fungsi utama di atas..
2.
int al, ti, lp, pa, le,vb, lse, si, ll, d",d4;c$ar pili$;c$ar ;c$ar n;
Script program diatas merupakan bagian dari pendeklarasian variable yang
bertipe int danc$aryang dapat di gunakan pada seluruh bagianprogram.
=.
s#itc$(pili$){case"8segitiga();break;case48balok();break;case28persegi();break;case=8laang();break;default8cout
-
7/26/2019 Modul III - Fungsi
14/21
Modul 3 Fungsi
G.
cout
-
7/26/2019 Modul III - Fungsi
15/21
Modul 3 Fungsi
memiliki nama danparametersebagai pembeda antara fungsi yang satu dengan
fungsi yang lain.3. Programprocedural merupakan program yang terstruktur dengan rapi. ,erdapat
dua ara dalam penulisan fungsi) yang pertama kita menuliskan fungsi di atas
fungsi utamamain!. :ang kedua kita menuliskan fungsi dibawah fungsi
utamamain!) 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.. *alam fungsi utama dapat digunakan proses perulangan maupun ontrol untuk
mengenali fungsi dinamis yang banyak./. *alam pembuatan fungsi dinamis harus "elas masukan dan keluarannya sehingga
ketika di panggil pada fungsi utama dapat di"alankan.
Tugas Pen)a+u!uan
1. $uatlah sebuah program biodata mahasiswa dgn menggunakan ;fungsi; dan ketentuan
inputannya sbb%
-
7/26/2019 Modul III - Fungsi
16/21
Modul 3 Fungsi
C. . Fakultas/prodiF. &emester
&oure ode
*include
-
7/26/2019 Modul III - Fungsi
17/21
Modul 3 Fungsi
void polisi(){
cout
-
7/26/2019 Modul III - Fungsi
18/21
Modul 3 Fungsi
}
void eva(){
cout
-
7/26/2019 Modul III - Fungsi
19/21
Modul 3 Fungsi
pedagang(); cout
-
7/26/2019 Modul III - Fungsi
20/21
Modul 3 Fungsi
#$ile(!!>>!!C>>n!!n>>n!!); cout
-
7/26/2019 Modul III - Fungsi
21/21
Modul 3 Fungsi
526&en"a.B>
top related