Chapter 1 - Algoritma & Pemograman 2
Chapter 1 - Algoritma & Pemograman 2
(C++)
Kegunaan Fungsi :
Mengurangi pengulangan penulisan program yang sama.
Program menjadi lebih terstruktur, sehingga mudah dipahami dan
lebih dapat dikembangkan.
Gambaran Fungsi (Function Visualization)
fn_kesatu();
{
main() statement1;
.......
{ statementN;
}
statement1;
fn_kesatu(); fn_kedua();
statement2; {
statement1;
fn_kedua(); .......
fn_ketiga(); statementN;
}
statement3;
statement4; fn_ketiga();
} {
statement1;
.......
statementN;
}
Gambaran Fungsi (Function Visualization)
fn_kesatu();
{
main() statement1;
.......
{ statementN;
}
statement1;
fn_kesatu(); fn_kedua();
statement2; {
statement1;
fn_kedua(); .......
fn_ketiga(); statementN;
}
statement3;
statement4; fn_ketiga();
fn_kesatu(); {
statement1;
} .......
Dapat dipanggil/digunakan statementN;
lebih dari satu kali. }
Gambaran Fungsi (Function Visualization)
fn_kesatu();
{ Fungsi dapat
main() statement1; memanggil fungsi
....... yang lainnya.
{ statementN;
}
statement1;
fn_kesatu(); fn_kedua();
statement2; {
statement1;
fn_kedua(); .......
fn_ketiga(); statementN;
}
statement3;
statement4; fn_ketiga();
} {
statement1;
.......
statementN;
fn_kedua();
}
Gambaran Fungsi (Function Visualization)
fn_kesatu();
{
main() statement1;
.......
{ statementN;
}
statement1;
fn_kesatu(); fn_kedua(); Fungsi dapat
memanggil
statement2; {
dirinya sendiri
statement1;
fn_kedua(); .......
(yang dinamakan
rekursif).
fn_ketiga(); statementN;
}
statement3;
statement4; fn_ketiga();
} {
statement1;
.......
statementN;
fn_ketiga();
}
Fungsi/Function : Contoh <fungsi_garis.cpp>
#include <iostream.h>
#include <conio.h>
void garis()
{
cout <<"---------------------" <<endl;
}
void main()
{
garis();
cout <<"Welcome to the jungle" <<endl;
garis();
cout <<"Selamat belajar C++" <<endl;
cout <<"Enjoy your life" <<endl;
garis();
Fungsi dapat
getch();
dipanggil/digunakan lebih
} dari satu kali.
Fungsi/Function : Contoh <fungsi_fungsipanggilfungsilain.cpp>
#include <iostream.h>
#include <conio.h>
void pindahbaris()
{
cout <<endl <<endl;
}
void garis()
{
cout <<"---------------------" <<endl;
pindahbaris();
}
void main()
{
garis();
cout <<"Welcome to the jungle" <<endl;
garis();
cout <<"Selamat belajar C++" <<endl;
cout <<"Enjoy your life" <<endl;
garis();
Keterangan:
tipe_nilai_balik : Tipe data dari fungsi (digunakan untuk fungsi dengan nilai balik)
Optional (boleh ditulis atau tidak).
nama_fungsi() : Nama dari fungsi.
tipe : Tipe data dari parameter.
Optional (boleh ditulis atau tidak, jika tidak ada parameter).
parameter : Argumen, boleh diisi atau dibiarkan kosong.
Optional (boleh ditulis atau tidak).
Prototipe Fungsi
Prototipe merupakan uraian dari blok fungsi yang dapat digunakan untuk mendeklarasikan
ke kompiler mengenai uraiannya.
Sebuah fungsi tidak dapat dipanggil kecuali sudah dideklarasikan, deklarasi fungsi dikenal
dengan sebutan prototipe. Prototipe fungsi berupa:
Function Procedure
void garis()
{
cout <<"---------------------" <<endl;
}
void main()
{
garis();
cout <<"Welcome to the jungle" <<endl;
garis();
cout <<"Selamat belajar C++" <<endl;
cout <<"Enjoy your life" <<endl;
garis();
getch();
}
Fungsi Dengan Nilai Balik
Fungsi dengan nilai balik, pada bagian tipe_nilai_balik fungsinya dituliskan dengan tipe
data (seperti : int, char[], float, double, dll.)
int umurKu()
{
perintah/statement;
}
Apabila tidak dituliskan tipe data untuk nilai balik dari fungsi tersebut, maka akan
dikenal sebagai tipe data int (integer) oleh kompiler, karena default-nya adalah int (integer).
umurKu()
{
perintah/statement;
}
Fungsi nilai balik menggunakan statement return u/ mengisi sebuah nilai ke fungsinya.
Fungsi Dengan Nilai Balik : Contoh <fungsi_nilaibalik.cpp>
#include <iostream.h>
#include <conio.h>
int umurKu()
{
return 19;
}
void main()
{
int umurGUE;
getch();
}
TUGAS
Tulis beberapa program dari slide Chapter 1 (Part 1) ini dan coba
jalankan, program tersebut dapat ditemukan pada slide yang judulnya
terdapat kata Contoh dan atau Latihan.
Setelah semua program sukses dijalankan, copy file .cpp dan .exe ke
satu folder yang bernamakan [C1P1-KELAS-NAMA-NIM], contoh
KELAS : 1X
NIM : 2011050505
NAMA : EMAN SURYAMAN JUNAEDI
C1P1-1X-EMAN SURYAMAN JUNAEDI-2011050505
Kumpulkan ke Ketua Kelas, Folder yang berisi file .cpp dan .exe anda.
Ketua Kelas mengumpulkan semua latihan mahasiswa pada
pertemuan/perkuliahan selanjutnya dalam 1 Folder untuk kelasnya tersebut.
Namakan Foldernya dengan [C1P1-KELAS].
C1P1-1X
Chapter 1
Fungsi (Function)
Atau gini .... Parameter merupakan Variabel yang berada dalam baris argumen pada
sebuah fungsi.
Parameter Aktual
Variabel yang digunakan pada pemanggilan suatu fungsi.
void main()
{
int a = 5, b = 10, c ;
void main()
{
int a, b, c;
a = 5 ;
b = 10 ;
c = tambah(a, b);
Sudah kenal kan dengan Fungsi ....? (struktur/bentuk umum, prototipe, dll)
Sudah kenal kan dengan Fungsi dengan nilai balik (fungsi/function) ....?
Sudah kenal kan dengan Fungsi tanpa nilai balik (prosedur/procedure) ....?
getch();
}
Page 1 Page 2
Call by Reference (pemanggilan dengan referensi)
getch();
}
Page 1 Page 2
Jenis Variabel
Variabel Lokal
Jenis Variabel
Variabel Global/Eksternal
Variabel Statis
Variabel Lokal
getch();
}
Page 1 Page 2
Variabel Global
int x = 5;
void lokal()
{
x = x + 10;
}
void main()
{
cout <<"Nilai x di dalam fungsi main() = " <<x ;
cout <<endl <<endl;
lokal();
cout <<"Nilai x setelah panggil fungsi lokal() = " <<x ;
getch();
}
Variabel Statis
getch();
cout<<"x dalam fungsi lokal()= " <<x; }
cout <<endl;
}
Page 1 Page 2
TUGAS
Tulis beberapa program dari slide Chapter 1 (Part 2) ini dan coba
jalankan, program tersebut dapat ditemukan pada slide yang judulnya
terdapat kata Contoh dan atau Latihan.
Setelah semua program sukses dijalankan, copy file .cpp dan .exe ke
satu folder yang bernamakan [C1P2-KELAS-NAMA-NIM], contoh
KELAS : 1X
NIM : 2011050505
NAMA : EMAN SURYAMAN JUNAEDI
C1P2-1X-EMAN SURYAMAN JUNAEDI-2011050505
Kumpulkan ke Ketua Kelas, Folder yang berisi file .cpp dan .exe anda.
Ketua Kelas mengumpulkan semua latihan mahasiswa pada
pertemuan/perkuliahan selanjutnya dalam 1 Folder untuk kelasnya tersebut.
Namakan Foldernya dengan [C1P2-KELAS].
C1P2-1X