SlideShare ist ein Scribd-Unternehmen logo
1 von 22
2
 Deklarasi dari Definisi Fungsi :
Syntax :
tipe Nama_Fungsi ( daftar_argumen )
{
blok pernyataan ;
}
Atau
tipe Nama_Fungsi ( tipe var_1, tipe var_2, … )
{
blok_pernyataan;
};
dimana:
 tipe -> tipe data dari return value ( int, float, double, char, void,
signed, unsigned, long, short).
 Nama_Fungsi -> nama fungsi sesuai aturan C++.
3
 daftar_argumen -> variable input / output.
 blok_pernyataan -> kumpulan instruksi.
Contoh :
float Hitung ( float Panjang, float Lebar )
{
float Luas; // Deklarasi variabel lokal
Luas = Panjang * Lebar;
return Luas;
};
atau
float Hitung ( float Panjang, float Lebar )
{
return ( Panjang * Lebar );
};
atau
4
void Hitung ( float Panjang, float Lebar, float *Luas )
{
*Luas = Panjang * Lebar ;
};
Prototipe Fungsi :
 Prototipe fungsi adalah deklarasi fungsi yang hanya memiliki
tipe, nama_fungsi, dan daftar_argumen, tetapi tidak memiliki
badan_fungsi.
 Prototipe fungsi harus dideklarasikan sebelum
fungsi tersebut dipanggil. Biasanya prototipe fungsi
dideklarasikan sebelum main program (fungsi main()), dan
definisi fungsinya diletakkan setelah main program.
 Manfaat dari prototipe fungsi adalah untuk menjamin
tipe argumen yang dilewatkan pada pemanggilan fungsi
benar-benar sesuai.
5
Tanpa adanya prototipe fungsi, amatlah mudah bagi
pemrogram untuk melakukan kesalahan tanpa sengaja dalam
melewatkan argumen. Misalnya, melewatkan argumen
bertipe float pada fungsi yang seharusnya meminta tipe data
int.
Deklarasi Prototipe Fungsi :
tipe Nama_Fungsi ( tipe var_1, tipe var_2, … );
atau
tipe Nama_Fungsi ( tipe , tipe , tipe, … );
Contoh :
void Tampil ( float Panjang, float Lebar );
atau
void Tampil ( float , float );
#include <iostream.h>
void CETAK();
void main ()
{
CETAK();
}
void CETAK()
{
cout<<"BELAJAR C++";
}
Fungsi CETAK di-DEKLARASI-kan lebih dahulu,
sebelum fungsi main().
Perhatikan pakai tanda ‘;’ (titik koma)
Kalau tidak pakai titik koma dianggap men-DEFINISI-
kan fungsi
Instruksi memanggil fungsi CETAK
Tulisan ini disebut:
Men-DEFINISI-kan fungsi
Fungsi yang dibuat sendiri
Nama : CETAK
Tipe : void (artinya tanpa tipe)
Dalam fungsi ini ada instruksi untuk mencetak kalimat
“BELAJAR C++”
6
#include<iostream.h>
#include<iomanip.h>
#include<conio.h>
long kuadrat(long l); // Prototipe fungsi
void main()
{
clrscr();
for(long bil = 200; bil<2000; bil+=200)
cout<<setw(8)<<bil
<<setw(8)<<kuadrat(bil)<<endl;
}
// Definisi Fungsi
long kuadrat(long l)
{
return(l * l);
}
7
8
Argumen (Function Parameter) :
 Argumen merupakan data yang dikirim dari program ke
fungsi dan sebaliknya.
 Argumen dipergunakan untuk mengirim / menerima data
yang akan diproses.
 Ada 2 jenis cara untuk mengirimkan argumen yaitu:
1. Passing by Value : nilai yang dikirim adalah nilai atau data yang
akan di proses
2. Passing by Reference nilai yang di kirim adalah berupa nilai
pointer (bukan data) yang me refer ke suatu data.
9
Contoh-04
A.
#include<stdio.h>
void CETAK(int T);
main()
{ int A,B,T;
A=5; B=2;
T=A+B;
CETAK(T)
}
void CETAK(int T)
{ printf(“%d”, T);}
Tercetak 7
T disini
disebut
T disini
disebut
13.05 Passing Variable.
Variabel Parameter dan variabel Argument
5 2 7
A B T
7
T
PARAMETER
ARGUMENT
T disini adalah variabel yg nilainya di kirim ke fungsi
cetak (passing value)dan di terima o/ var T dlm
fungsi Cetak
10
Contoh-04
A.
#include<stdio.h>
void CETAK(int T);
main()
{ int A,B,T;
A=5; B=2;
T=A+B;
CETAK(T);
}
void CETAK(int X)
{ printf(“%d”, X);}
Tercetak 7
T disini
disebut
X disini
disebut
13.05 Passing Variable.
Variabel Parameter dan variabel Argument
5 2 7
A B T
7
X
PARAMETER
ARGUMENT
11
Contoh-04
C.
#include<stdio.h>
void CETAK(int T);
main()
{ int A,B,T;
A=5; B=2;
T=A+B;
CETAK(T);
}
void CETAK(int X)
{ int Y;
Y = X * 2;
printf(“%d”, Y);}
Tercetak 14
5 2 7
A B T
7
X
14
Y
12
Variabel dalam
fungsi main( )
5 2 7
A B T
return(T);
Contoh-05
A. #include<stdio.h>
int JUMLAH(int A, int B);
main()
{ int A,B,T;
A=5; B=2;
T = JUMLAH(A,B);
printf(“%d”, T);
}
int JUMLAH(int A, int B)
{ int T;
T = A+B;
return(T);
}
Tercetak 7
13.06 Nilai yang dihitung oleh Called Function
dapat dikembalikan (return) ke Calling Funtion
Variabel dalam
fungsi JUMLAH
5 2 7
A B T
13
Variabel dalam
fungsi main( )
5 2 7
A B T
return(Z);
B. #include<stdio.h>
int JUMLAH(int A, int B);
main()
{ int A,B,T;
A=5; B=2;
T = JUMLAH(A,B);
printf(“%d”, T);
}
int JUMLAH(int X, int Y)
{ int Z;
Z = X + Y;
return(Z);
}
Tercetak 7
Variabel dalam
fungsi JUMLAH
5 2 7
X Y Z
14
5 2 7
A B T
return(Z);
B. #include<stdio.h>
int JUMLAH(int A, int B);
main()
{ int A,B,T;
A=5; B=2;
T = JUMLAH(A,B);
printf(“%d”, T);
}
int JUMLAH(int X, int Y)
{ int Z;
Z = X + Y;
}
Tercetak 7
5 2 7
X Y Z
Kalau tak ada instruksi return( ),
maka yang di return adalah hasil
perhitungan terakhir
15
D. #include<stdio.h>
int JUMLAH(int A, int B);
main()
{ int A,B,T;
A=5; B=2;
T = JUMLAH(A,B);
printf(“%d”, T);
}
int JUMLAH(int X, int Y)
{ int Z,U;
Z = X+Y;
U = X * Y;
return(Z)
}
Tercetak 7
Yang direturn
adalah nilai Z
16
E. #include<stdio.h>
int JUMLAH(int A, int B);
main()
{ int A,B,T;
A=5; B=2;
T = JUMLAH(A,B);
printf(“%d”, T);
}
int JUMLAH(int X, int Y)
{ int Z,U;
Z = X+Y;
U = X * Y;
}
Tercetak 10
return
nilai U
17
Contoh
-11
#include<iostream.h>
#include<conio.h>
Void saya_ingat();
Void main()
{ int mamamia = 50;
clrscr();
saya_ingat();
saya_ingat();
saya_ingat();
cout<<“main() : mamamia=“<<mamamia<<endl;
}
Void saya_ingat()
Static int mamamia = 77; // variabel statis
Mamamia++;
cout<<“saya_ingat() : mamamia=“<<mamamia<<endl;
}
A.
Tercetak : ?
13.12 Variabel Static
Jika variabel lokal berdiri sebagai variabel statis maka :
•Var tetap hanya dapat diakses pada fungsi yang mendefinisikannya
•Var tidak hilang saat eksekusi fungsi terakhir
•Inisialisasi oleh program akan di lakukan sekali saja selama program dijalankan
Jika variabel eksternal di jadikan sebagai variabel statis variabel ini dapat di akses oleh semua file yang di
definisikan pada file yang sama dengan var eksternal tersebut
18
#include<stdio.h>
int TAMBAH();
main()
{ int i, T;
for (i = 1; i <=5; i++)
{ T = TAMBAH());
printf(“n%d “, T );
}
}
int TAMBAH()
{ static int X=5;
X = X + 2;
return(X);
}
B.
Tercetak : 7
9
11
13
15
13.12 Variabel Static
19
13.12 Variabel Otomatis
Variabel hanya di kenal di dalam fungsi tempat variabel di definisikan
Contoh Program C++ :
#include <iostream.h>
#include <conio.h>
void alpha (); // Prototipe Fungsi
void main()
{ int x = 22; // variabel lokal pada main()
double y = 2.22;
clrscr();
cout << “Pada main() : x =“ << x
<< “y = “ <<y<<endl;
alpha (); // Pemanggilan Fungsi alpha
cout << “Pada main() : x =“ << x
<< “y = “ <<y<<endl;
}
void alpha ( ) // Definisi fungsi alpha()
{
int x = 20; //variabel lokal pada alpha()
double y = 3.14; //variabel lokal pada alpha()
cout << “Pada alpha() : x =“ << x
<< “y = “ <<y<<endl;
}
20
13.12 Variabel Ekternal
Variabel eksternal kebalikan dari variabel Otomatis. Variabel ini di definisikan di luar fungsi manapun atau
disebut juga dengan variabel global
Contoh Program C++ :
#include <iostream.h>
#include <conio.h>
Int oblada = 550; // variabel eksternal
void tambah(); // Prototipe Fungsi
void main()
{
clrscr();
cout<<oblada<<endl;
tambah();
cout<<oblada<<endl;
tambah();
cout<<oblada<<endl;
}
void tambah () // Definisi Fungsi
{
oblada++; // variabel eksternal dinaikkan
}
21
Inline Function :
 Fungsi ini bermanfaat menghemat memori (mengabaikan
peletakan argumen-argumen fungsi dalam stack pada saat
pemanggilan fungsi), dengan cara
menggabungkan fungsi ke dalam program utama.
 Inline function disarankan dipakai pada fungsi yang sering
dipanggil dan ukurannya kecil (terdiri dari satu atau dua
pernyataan).
 Pembuatan Inline function tersebut dilakukan dengan
cara menambahkan keyword inline di depan tipe
fungsi pada saat mendefinisikan fungsi.
Syntax :
inline tipe Nama_Fungsi ( argumen )
{
blok_pernyataan;
return Nilai;
}
22
Contoh :
inline float Luas ( float Pj, float Lb )
{ return ( Pj * Lb ); }
Contoh Program C++ :
#include <iostream.h>
#include <conio.h>
inline int jumlah( int x, int y)
{
return ( x + y);
}
void main()
{
clrscr();
for(int i = 1; i<100; i++)
cout<<i<<“.”<<jumlah(i,2*i)<<endl;
}
Soal:
1. Buat Program dengan menggunakan fungsi untuk penjumlahan
1….100 dengan output : 1+2+3+4+…..+100 = 2616
2. Buatlah program dengan menggunakan fungsi untuk mencari nilai
Faktorial dengan hasil Output:
Mencari Nilai Faktorial
Masukkan Nilai X:
Nilai Faktorial dari X :
23

Weitere ähnliche Inhalte

Was ist angesagt?

3. Pointer dan List Berkait Singly
3. Pointer dan List Berkait Singly3. Pointer dan List Berkait Singly
3. Pointer dan List Berkait SinglyKelinci Coklat
 
Tugas C++ - Dian Aditya - 2009/2010
Tugas C++ - Dian Aditya - 2009/2010Tugas C++ - Dian Aditya - 2009/2010
Tugas C++ - Dian Aditya - 2009/2010Dian Aditya
 
Pemrograman C++ - Fungsi dan Prosedur
Pemrograman C++ - Fungsi dan ProsedurPemrograman C++ - Fungsi dan Prosedur
Pemrograman C++ - Fungsi dan ProsedurKuliahKita
 
Pertemuan 11 : Algoritma & Pemrograman
Pertemuan 11 : Algoritma & PemrogramanPertemuan 11 : Algoritma & Pemrograman
Pertemuan 11 : Algoritma & PemrogramanTri Retna
 
Tugas struktur data
Tugas struktur dataTugas struktur data
Tugas struktur dataDevandy Enda
 
Algoritma dan Struktur Data - fungsi dan prosedur c++
Algoritma dan Struktur Data -  fungsi dan prosedur c++Algoritma dan Struktur Data -  fungsi dan prosedur c++
Algoritma dan Struktur Data - fungsi dan prosedur c++Georgius Rinaldo
 
Pointer
PointerPointer
Pointerwindi1
 
PostgreSQL Trigger
PostgreSQL TriggerPostgreSQL Trigger
PostgreSQL TriggerAmmar Shadiq
 
Pertemuan 9 : Algoritma & Pemrograman
Pertemuan 9 : Algoritma & PemrogramanPertemuan 9 : Algoritma & Pemrograman
Pertemuan 9 : Algoritma & PemrogramanTri Retna
 
Pertemuan 6 : Algoritma & Pemrograman
Pertemuan 6 : Algoritma & PemrogramanPertemuan 6 : Algoritma & Pemrograman
Pertemuan 6 : Algoritma & PemrogramanTri Retna
 
Lapopran praktikum struktur data pertemuan 3 Merge_Sort
Lapopran praktikum struktur data pertemuan 3 Merge_SortLapopran praktikum struktur data pertemuan 3 Merge_Sort
Lapopran praktikum struktur data pertemuan 3 Merge_SortAdy Achirul
 
PostgreSQL Stored-procedure
PostgreSQL Stored-procedurePostgreSQL Stored-procedure
PostgreSQL Stored-procedureAmmar Shadiq
 

Was ist angesagt? (18)

3. Pointer dan List Berkait Singly
3. Pointer dan List Berkait Singly3. Pointer dan List Berkait Singly
3. Pointer dan List Berkait Singly
 
Tugas C++ - Dian Aditya - 2009/2010
Tugas C++ - Dian Aditya - 2009/2010Tugas C++ - Dian Aditya - 2009/2010
Tugas C++ - Dian Aditya - 2009/2010
 
Procedur
ProcedurProcedur
Procedur
 
Function
FunctionFunction
Function
 
P1 2-tipe data
P1 2-tipe dataP1 2-tipe data
P1 2-tipe data
 
Pemrograman C++ - Fungsi dan Prosedur
Pemrograman C++ - Fungsi dan ProsedurPemrograman C++ - Fungsi dan Prosedur
Pemrograman C++ - Fungsi dan Prosedur
 
Pertemuan 11 : Algoritma & Pemrograman
Pertemuan 11 : Algoritma & PemrogramanPertemuan 11 : Algoritma & Pemrograman
Pertemuan 11 : Algoritma & Pemrograman
 
Tugas struktur data
Tugas struktur dataTugas struktur data
Tugas struktur data
 
Algoritma dan Struktur Data - fungsi dan prosedur c++
Algoritma dan Struktur Data -  fungsi dan prosedur c++Algoritma dan Struktur Data -  fungsi dan prosedur c++
Algoritma dan Struktur Data - fungsi dan prosedur c++
 
Algoritma matematika
Algoritma matematika Algoritma matematika
Algoritma matematika
 
Pointer
PointerPointer
Pointer
 
modul algoritma Bab 5
modul algoritma Bab 5modul algoritma Bab 5
modul algoritma Bab 5
 
Function
FunctionFunction
Function
 
PostgreSQL Trigger
PostgreSQL TriggerPostgreSQL Trigger
PostgreSQL Trigger
 
Pertemuan 9 : Algoritma & Pemrograman
Pertemuan 9 : Algoritma & PemrogramanPertemuan 9 : Algoritma & Pemrograman
Pertemuan 9 : Algoritma & Pemrograman
 
Pertemuan 6 : Algoritma & Pemrograman
Pertemuan 6 : Algoritma & PemrogramanPertemuan 6 : Algoritma & Pemrograman
Pertemuan 6 : Algoritma & Pemrograman
 
Lapopran praktikum struktur data pertemuan 3 Merge_Sort
Lapopran praktikum struktur data pertemuan 3 Merge_SortLapopran praktikum struktur data pertemuan 3 Merge_Sort
Lapopran praktikum struktur data pertemuan 3 Merge_Sort
 
PostgreSQL Stored-procedure
PostgreSQL Stored-procedurePostgreSQL Stored-procedure
PostgreSQL Stored-procedure
 

Andere mochten auch

Presentation - Goal Seeking
Presentation - Goal Seeking Presentation - Goal Seeking
Presentation - Goal Seeking Gautam Sikri
 
Vehicle Response
Vehicle ResponseVehicle Response
Vehicle ResponseChris White
 
Presentación1
Presentación1Presentación1
Presentación1camposjesi
 
марк квинтилиан
марк квинтилианмарк квинтилиан
марк квинтилианKateKool
 
Laporan PKL di WLN dan PT.Air Manado
Laporan PKL di WLN dan PT.Air ManadoLaporan PKL di WLN dan PT.Air Manado
Laporan PKL di WLN dan PT.Air ManadoMargareth Pandaleke
 
Scientific and artistic principles of tooth shade selection
Scientific and artistic principles of tooth shade selectionScientific and artistic principles of tooth shade selection
Scientific and artistic principles of tooth shade selectionRami Magdi
 
Instructional classroom management
Instructional classroom managementInstructional classroom management
Instructional classroom managementNancy Morris
 
Arsen Sebagai Bahan Kimia Berbahaya
Arsen Sebagai Bahan Kimia BerbahayaArsen Sebagai Bahan Kimia Berbahaya
Arsen Sebagai Bahan Kimia BerbahayaMargareth Pandaleke
 
A guideline for the enforced extraction of first permanent molars in children...
A guideline for the enforced extraction of first permanent molars in children...A guideline for the enforced extraction of first permanent molars in children...
A guideline for the enforced extraction of first permanent molars in children...Rami Magdi
 
Extraction of primary teeth balance and compensation
Extraction of primary teeth   balance and compensationExtraction of primary teeth   balance and compensation
Extraction of primary teeth balance and compensationRami Magdi
 
Barry Hesk: Cisco Unified Communications Manager training deck 1
Barry Hesk: Cisco Unified Communications Manager training deck 1Barry Hesk: Cisco Unified Communications Manager training deck 1
Barry Hesk: Cisco Unified Communications Manager training deck 1Barry Hesk
 
Progressive bass guitar
Progressive bass guitarProgressive bass guitar
Progressive bass guitarleoyliu0506
 

Andere mochten auch (18)

Bio umum mentimun (presentasi)
Bio umum mentimun (presentasi)Bio umum mentimun (presentasi)
Bio umum mentimun (presentasi)
 
Presentation - Goal Seeking
Presentation - Goal Seeking Presentation - Goal Seeking
Presentation - Goal Seeking
 
Vehicle Response
Vehicle ResponseVehicle Response
Vehicle Response
 
Presentación1
Presentación1Presentación1
Presentación1
 
Kim das
Kim das Kim das
Kim das
 
Structure
StructureStructure
Structure
 
марк квинтилиан
марк квинтилианмарк квинтилиан
марк квинтилиан
 
Laporan PKL di WLN dan PT.Air Manado
Laporan PKL di WLN dan PT.Air ManadoLaporan PKL di WLN dan PT.Air Manado
Laporan PKL di WLN dan PT.Air Manado
 
String baru
String baruString baru
String baru
 
Array
ArrayArray
Array
 
Kimia anorganik 2 bismut
Kimia anorganik 2 bismutKimia anorganik 2 bismut
Kimia anorganik 2 bismut
 
Scientific and artistic principles of tooth shade selection
Scientific and artistic principles of tooth shade selectionScientific and artistic principles of tooth shade selection
Scientific and artistic principles of tooth shade selection
 
Instructional classroom management
Instructional classroom managementInstructional classroom management
Instructional classroom management
 
Arsen Sebagai Bahan Kimia Berbahaya
Arsen Sebagai Bahan Kimia BerbahayaArsen Sebagai Bahan Kimia Berbahaya
Arsen Sebagai Bahan Kimia Berbahaya
 
A guideline for the enforced extraction of first permanent molars in children...
A guideline for the enforced extraction of first permanent molars in children...A guideline for the enforced extraction of first permanent molars in children...
A guideline for the enforced extraction of first permanent molars in children...
 
Extraction of primary teeth balance and compensation
Extraction of primary teeth   balance and compensationExtraction of primary teeth   balance and compensation
Extraction of primary teeth balance and compensation
 
Barry Hesk: Cisco Unified Communications Manager training deck 1
Barry Hesk: Cisco Unified Communications Manager training deck 1Barry Hesk: Cisco Unified Communications Manager training deck 1
Barry Hesk: Cisco Unified Communications Manager training deck 1
 
Progressive bass guitar
Progressive bass guitarProgressive bass guitar
Progressive bass guitar
 

Ähnlich wie Function

Materi kuliah 18 fungsi part 1
Materi kuliah 18   fungsi part 1Materi kuliah 18   fungsi part 1
Materi kuliah 18 fungsi part 1Budi Yono
 
Materi kuliah 18 fungsi part 1
Materi kuliah 18   fungsi part 1Materi kuliah 18   fungsi part 1
Materi kuliah 18 fungsi part 1kua
 
Materi kuliah 18 fungsi part 1
Materi kuliah 18   fungsi part 1Materi kuliah 18   fungsi part 1
Materi kuliah 18 fungsi part 1Budi Yono
 
Asyiknya belajar struktur data di planet c++
Asyiknya belajar struktur data di planet c++Asyiknya belajar struktur data di planet c++
Asyiknya belajar struktur data di planet c++Ilan Surf ﺕ
 
Asyiknya Belajar Struktur Data di Planet C++
Asyiknya Belajar Struktur Data di Planet C++Asyiknya Belajar Struktur Data di Planet C++
Asyiknya Belajar Struktur Data di Planet C++Nurdin Al-Azies
 
Praktikum fix 2
Praktikum fix 2Praktikum fix 2
Praktikum fix 2inggar tri
 
Awal dasar belajar c++
Awal dasar belajar c++Awal dasar belajar c++
Awal dasar belajar c++farizky berian
 
fungsi algoritma
fungsi algoritmafungsi algoritma
fungsi algoritmaDhan junkie
 
Pemrograman Web - Statement Javascript
Pemrograman Web - Statement JavascriptPemrograman Web - Statement Javascript
Pemrograman Web - Statement JavascriptKuliahKita
 
Fungsi part 3
Fungsi part 3Fungsi part 3
Fungsi part 3Budi Yono
 
Dts x dicoding #3 memulai pemrograman kotlin
Dts x dicoding #3 memulai pemrograman kotlinDts x dicoding #3 memulai pemrograman kotlin
Dts x dicoding #3 memulai pemrograman kotlinAhmad Arif Faizin
 
Fungsi part 3
Fungsi part 3Fungsi part 3
Fungsi part 3kua
 
Fungsi part 3
Fungsi part 3Fungsi part 3
Fungsi part 3Budi Yono
 

Ähnlich wie Function (20)

Materi kuliah 18 fungsi part 1
Materi kuliah 18   fungsi part 1Materi kuliah 18   fungsi part 1
Materi kuliah 18 fungsi part 1
 
Materi kuliah 18 fungsi part 1
Materi kuliah 18   fungsi part 1Materi kuliah 18   fungsi part 1
Materi kuliah 18 fungsi part 1
 
Materi kuliah 18 fungsi part 1
Materi kuliah 18   fungsi part 1Materi kuliah 18   fungsi part 1
Materi kuliah 18 fungsi part 1
 
Fungsi dan Prosedur
Fungsi dan ProsedurFungsi dan Prosedur
Fungsi dan Prosedur
 
Asyiknya belajar struktur data di planet c++
Asyiknya belajar struktur data di planet c++Asyiknya belajar struktur data di planet c++
Asyiknya belajar struktur data di planet c++
 
Asyiknya Belajar Struktur Data di Planet C++
Asyiknya Belajar Struktur Data di Planet C++Asyiknya Belajar Struktur Data di Planet C++
Asyiknya Belajar Struktur Data di Planet C++
 
Cc++
Cc++Cc++
Cc++
 
07 function 2
07 function 207 function 2
07 function 2
 
Desain Top Down
Desain Top DownDesain Top Down
Desain Top Down
 
Praktikum fix 2
Praktikum fix 2Praktikum fix 2
Praktikum fix 2
 
Modul pd
Modul pdModul pd
Modul pd
 
Awal dasar belajar c++
Awal dasar belajar c++Awal dasar belajar c++
Awal dasar belajar c++
 
fungsi algoritma
fungsi algoritmafungsi algoritma
fungsi algoritma
 
Pemrograman Web - Statement Javascript
Pemrograman Web - Statement JavascriptPemrograman Web - Statement Javascript
Pemrograman Web - Statement Javascript
 
Tipe data dan variabel
Tipe data dan variabelTipe data dan variabel
Tipe data dan variabel
 
3 adp operator
3   adp operator3   adp operator
3 adp operator
 
Fungsi part 3
Fungsi part 3Fungsi part 3
Fungsi part 3
 
Dts x dicoding #3 memulai pemrograman kotlin
Dts x dicoding #3 memulai pemrograman kotlinDts x dicoding #3 memulai pemrograman kotlin
Dts x dicoding #3 memulai pemrograman kotlin
 
Fungsi part 3
Fungsi part 3Fungsi part 3
Fungsi part 3
 
Fungsi part 3
Fungsi part 3Fungsi part 3
Fungsi part 3
 

Function

  • 1. 2  Deklarasi dari Definisi Fungsi : Syntax : tipe Nama_Fungsi ( daftar_argumen ) { blok pernyataan ; } Atau tipe Nama_Fungsi ( tipe var_1, tipe var_2, … ) { blok_pernyataan; }; dimana:  tipe -> tipe data dari return value ( int, float, double, char, void, signed, unsigned, long, short).  Nama_Fungsi -> nama fungsi sesuai aturan C++.
  • 2. 3  daftar_argumen -> variable input / output.  blok_pernyataan -> kumpulan instruksi. Contoh : float Hitung ( float Panjang, float Lebar ) { float Luas; // Deklarasi variabel lokal Luas = Panjang * Lebar; return Luas; }; atau float Hitung ( float Panjang, float Lebar ) { return ( Panjang * Lebar ); }; atau
  • 3. 4 void Hitung ( float Panjang, float Lebar, float *Luas ) { *Luas = Panjang * Lebar ; }; Prototipe Fungsi :  Prototipe fungsi adalah deklarasi fungsi yang hanya memiliki tipe, nama_fungsi, dan daftar_argumen, tetapi tidak memiliki badan_fungsi.  Prototipe fungsi harus dideklarasikan sebelum fungsi tersebut dipanggil. Biasanya prototipe fungsi dideklarasikan sebelum main program (fungsi main()), dan definisi fungsinya diletakkan setelah main program.  Manfaat dari prototipe fungsi adalah untuk menjamin tipe argumen yang dilewatkan pada pemanggilan fungsi benar-benar sesuai.
  • 4. 5 Tanpa adanya prototipe fungsi, amatlah mudah bagi pemrogram untuk melakukan kesalahan tanpa sengaja dalam melewatkan argumen. Misalnya, melewatkan argumen bertipe float pada fungsi yang seharusnya meminta tipe data int. Deklarasi Prototipe Fungsi : tipe Nama_Fungsi ( tipe var_1, tipe var_2, … ); atau tipe Nama_Fungsi ( tipe , tipe , tipe, … ); Contoh : void Tampil ( float Panjang, float Lebar ); atau void Tampil ( float , float );
  • 5. #include <iostream.h> void CETAK(); void main () { CETAK(); } void CETAK() { cout<<"BELAJAR C++"; } Fungsi CETAK di-DEKLARASI-kan lebih dahulu, sebelum fungsi main(). Perhatikan pakai tanda ‘;’ (titik koma) Kalau tidak pakai titik koma dianggap men-DEFINISI- kan fungsi Instruksi memanggil fungsi CETAK Tulisan ini disebut: Men-DEFINISI-kan fungsi Fungsi yang dibuat sendiri Nama : CETAK Tipe : void (artinya tanpa tipe) Dalam fungsi ini ada instruksi untuk mencetak kalimat “BELAJAR C++” 6
  • 6. #include<iostream.h> #include<iomanip.h> #include<conio.h> long kuadrat(long l); // Prototipe fungsi void main() { clrscr(); for(long bil = 200; bil<2000; bil+=200) cout<<setw(8)<<bil <<setw(8)<<kuadrat(bil)<<endl; } // Definisi Fungsi long kuadrat(long l) { return(l * l); } 7
  • 7. 8 Argumen (Function Parameter) :  Argumen merupakan data yang dikirim dari program ke fungsi dan sebaliknya.  Argumen dipergunakan untuk mengirim / menerima data yang akan diproses.  Ada 2 jenis cara untuk mengirimkan argumen yaitu: 1. Passing by Value : nilai yang dikirim adalah nilai atau data yang akan di proses 2. Passing by Reference nilai yang di kirim adalah berupa nilai pointer (bukan data) yang me refer ke suatu data.
  • 8. 9 Contoh-04 A. #include<stdio.h> void CETAK(int T); main() { int A,B,T; A=5; B=2; T=A+B; CETAK(T) } void CETAK(int T) { printf(“%d”, T);} Tercetak 7 T disini disebut T disini disebut 13.05 Passing Variable. Variabel Parameter dan variabel Argument 5 2 7 A B T 7 T PARAMETER ARGUMENT T disini adalah variabel yg nilainya di kirim ke fungsi cetak (passing value)dan di terima o/ var T dlm fungsi Cetak
  • 9. 10 Contoh-04 A. #include<stdio.h> void CETAK(int T); main() { int A,B,T; A=5; B=2; T=A+B; CETAK(T); } void CETAK(int X) { printf(“%d”, X);} Tercetak 7 T disini disebut X disini disebut 13.05 Passing Variable. Variabel Parameter dan variabel Argument 5 2 7 A B T 7 X PARAMETER ARGUMENT
  • 10. 11 Contoh-04 C. #include<stdio.h> void CETAK(int T); main() { int A,B,T; A=5; B=2; T=A+B; CETAK(T); } void CETAK(int X) { int Y; Y = X * 2; printf(“%d”, Y);} Tercetak 14 5 2 7 A B T 7 X 14 Y
  • 11. 12 Variabel dalam fungsi main( ) 5 2 7 A B T return(T); Contoh-05 A. #include<stdio.h> int JUMLAH(int A, int B); main() { int A,B,T; A=5; B=2; T = JUMLAH(A,B); printf(“%d”, T); } int JUMLAH(int A, int B) { int T; T = A+B; return(T); } Tercetak 7 13.06 Nilai yang dihitung oleh Called Function dapat dikembalikan (return) ke Calling Funtion Variabel dalam fungsi JUMLAH 5 2 7 A B T
  • 12. 13 Variabel dalam fungsi main( ) 5 2 7 A B T return(Z); B. #include<stdio.h> int JUMLAH(int A, int B); main() { int A,B,T; A=5; B=2; T = JUMLAH(A,B); printf(“%d”, T); } int JUMLAH(int X, int Y) { int Z; Z = X + Y; return(Z); } Tercetak 7 Variabel dalam fungsi JUMLAH 5 2 7 X Y Z
  • 13. 14 5 2 7 A B T return(Z); B. #include<stdio.h> int JUMLAH(int A, int B); main() { int A,B,T; A=5; B=2; T = JUMLAH(A,B); printf(“%d”, T); } int JUMLAH(int X, int Y) { int Z; Z = X + Y; } Tercetak 7 5 2 7 X Y Z Kalau tak ada instruksi return( ), maka yang di return adalah hasil perhitungan terakhir
  • 14. 15 D. #include<stdio.h> int JUMLAH(int A, int B); main() { int A,B,T; A=5; B=2; T = JUMLAH(A,B); printf(“%d”, T); } int JUMLAH(int X, int Y) { int Z,U; Z = X+Y; U = X * Y; return(Z) } Tercetak 7 Yang direturn adalah nilai Z
  • 15. 16 E. #include<stdio.h> int JUMLAH(int A, int B); main() { int A,B,T; A=5; B=2; T = JUMLAH(A,B); printf(“%d”, T); } int JUMLAH(int X, int Y) { int Z,U; Z = X+Y; U = X * Y; } Tercetak 10 return nilai U
  • 16. 17 Contoh -11 #include<iostream.h> #include<conio.h> Void saya_ingat(); Void main() { int mamamia = 50; clrscr(); saya_ingat(); saya_ingat(); saya_ingat(); cout<<“main() : mamamia=“<<mamamia<<endl; } Void saya_ingat() Static int mamamia = 77; // variabel statis Mamamia++; cout<<“saya_ingat() : mamamia=“<<mamamia<<endl; } A. Tercetak : ? 13.12 Variabel Static Jika variabel lokal berdiri sebagai variabel statis maka : •Var tetap hanya dapat diakses pada fungsi yang mendefinisikannya •Var tidak hilang saat eksekusi fungsi terakhir •Inisialisasi oleh program akan di lakukan sekali saja selama program dijalankan Jika variabel eksternal di jadikan sebagai variabel statis variabel ini dapat di akses oleh semua file yang di definisikan pada file yang sama dengan var eksternal tersebut
  • 17. 18 #include<stdio.h> int TAMBAH(); main() { int i, T; for (i = 1; i <=5; i++) { T = TAMBAH()); printf(“n%d “, T ); } } int TAMBAH() { static int X=5; X = X + 2; return(X); } B. Tercetak : 7 9 11 13 15 13.12 Variabel Static
  • 18. 19 13.12 Variabel Otomatis Variabel hanya di kenal di dalam fungsi tempat variabel di definisikan Contoh Program C++ : #include <iostream.h> #include <conio.h> void alpha (); // Prototipe Fungsi void main() { int x = 22; // variabel lokal pada main() double y = 2.22; clrscr(); cout << “Pada main() : x =“ << x << “y = “ <<y<<endl; alpha (); // Pemanggilan Fungsi alpha cout << “Pada main() : x =“ << x << “y = “ <<y<<endl; } void alpha ( ) // Definisi fungsi alpha() { int x = 20; //variabel lokal pada alpha() double y = 3.14; //variabel lokal pada alpha() cout << “Pada alpha() : x =“ << x << “y = “ <<y<<endl; }
  • 19. 20 13.12 Variabel Ekternal Variabel eksternal kebalikan dari variabel Otomatis. Variabel ini di definisikan di luar fungsi manapun atau disebut juga dengan variabel global Contoh Program C++ : #include <iostream.h> #include <conio.h> Int oblada = 550; // variabel eksternal void tambah(); // Prototipe Fungsi void main() { clrscr(); cout<<oblada<<endl; tambah(); cout<<oblada<<endl; tambah(); cout<<oblada<<endl; } void tambah () // Definisi Fungsi { oblada++; // variabel eksternal dinaikkan }
  • 20. 21 Inline Function :  Fungsi ini bermanfaat menghemat memori (mengabaikan peletakan argumen-argumen fungsi dalam stack pada saat pemanggilan fungsi), dengan cara menggabungkan fungsi ke dalam program utama.  Inline function disarankan dipakai pada fungsi yang sering dipanggil dan ukurannya kecil (terdiri dari satu atau dua pernyataan).  Pembuatan Inline function tersebut dilakukan dengan cara menambahkan keyword inline di depan tipe fungsi pada saat mendefinisikan fungsi. Syntax : inline tipe Nama_Fungsi ( argumen ) { blok_pernyataan; return Nilai; }
  • 21. 22 Contoh : inline float Luas ( float Pj, float Lb ) { return ( Pj * Lb ); } Contoh Program C++ : #include <iostream.h> #include <conio.h> inline int jumlah( int x, int y) { return ( x + y); } void main() { clrscr(); for(int i = 1; i<100; i++) cout<<i<<“.”<<jumlah(i,2*i)<<endl; }
  • 22. Soal: 1. Buat Program dengan menggunakan fungsi untuk penjumlahan 1….100 dengan output : 1+2+3+4+…..+100 = 2616 2. Buatlah program dengan menggunakan fungsi untuk mencari nilai Faktorial dengan hasil Output: Mencari Nilai Faktorial Masukkan Nilai X: Nilai Faktorial dari X : 23