2. FUNCTION adalah sejumlah instruksi yang dikelompokkan menjadi satu, berdiri sendiri, membentuk suatu subprogram yang sering juga disebut subroutine.
3.
4. #include <stdio.h> int hitung(int a, int b); void main() { int a,b,t; a = 5; b = 2; t = 0; t = hitung(a,b); printf(“%d”, t); } int hitung(int a, int b) { int tot; tot = a + b; return (tot); } Deklarasi Fungsi hitung()
5. #include <stdio.h> int hitung(int a, int b); void main() { int a,b,t; a = 5; b = 2; t = 0; t = hitung(a,b); printf(“%d”, t); } int hitung(int a, int b) { int tot; tot = a + b; return (tot); } Bagian ini disebut main program atau program induk atau fungsi induk atau main function. Pemanggilan fungsi hitung()
6. #include <stdio.h> int hitung(int a, int b); void main() { int a,b,t; a = 5; b = 2; t = 0; t = hitung(a,b); printf(“%d”, t); } int hitung(int a, int b) { int tot; tot = a + b; return (tot); } Pendefinisian fungsi hitung() dimana di bagian ini memuat urutan atau bagaimana fungsi bekerja/berjalan.
7. DEKLARASI FUNGSI Bentuk umum : type nama_fungsi (argumen1, argumen2, …); Tipe fungsi Sama seperti tipe data (variabel) Bisa berupa char , int , float , double , dan void
8. DEKLARASI FUNGSI Bentuk umum : type nama_fungsi (argumen1, argumen2, …); Nama Fungsi Penamaan fungsi sama seperti penamaan variabel biasa.
9. DEKLARASI FUNGSI Bentuk umum : type nama_fungsi ( argumen1, argumen2, … ); Argumen atau Parameter Fungsi Argument fungsi merupakan masukan yang diperlukan oleh fungsi. Sebuah fungsi boleh tidak memiliki argument. Bentuk penulisan argument sama seperti pendeklarasian sebuah variabel
10. DEKLARASI FUNGSI Bentuk umum : type nama_fungsi (argumen1, argumen2, …) ; Titik Koma (;) Jangan lupakan akhiri pendeklarasian fungsi dengan titik koma (;)
11. DEKLARASI FUNGSI Bentuk umum : type nama_fungsi (argumen1, argumen2, …); Contoh: int hitung (int a, int b); void tampil(float nilai); void menu(); Letak deklarasi fungsi HARUS berada sebelum fungsi main()
12.
13.
14.
15.
16. VARIABEL LOKAL DAN GLOBAL t adalah variabel GLOBAL #include <stdio.h> void tambah(int a, int b); int t; void main() { int a, b; a = 5; b = 2; tambah(a, b); printf(“%d”, t); } void tambah(int a, int b) { t = a + b; }
17. #include <stdio.h> void tambah(int a, int b); int t; void main() { int a, b; a = 5; b = 2; tambah(a, b); printf(“%d”, t); } void tambah(int a, int b) { t = a + b; } VARIABEL LOKAL DAN GLOBAL a dan b adalah variabel LOKAL
18. VARIABEL LOKAL DAN GLOBAL A dan b di sini bersifat LOKAL dan tidak ada hubungannya dengan variabel a dan b di fungsi main() #include <stdio.h> void tambah(int a, int b); int t; void main() { int a, b; a = 5; b = 2; tambah(a, b); printf(“%d”, t); } void tambah(int a, int b) { t = a + b; }
19. VARIABEL LOKAL DAN GLOBAL #include <stdio.h> void tambah(int a, int b); int t; void main() { int a, b; a = 5; b = 2; tambah(a, b); printf(“%d”, t); } void tambah(int a, int b) { t = a + b; } Variabel t sudah dikenal di semua fungsi baik di fungsi main() maupun di fungsi tambah() tanpa perlu dideklarasikan dulu.
20.
21. PASSING BY VALUE #include <stdio.h> int hitung(int a, int b); void main() { int a,b,t; a = 5; b = 2; t = hitung(a,b); printf(“%d”, t); } int hitung(int a, int b) { int tot; tot = a + b; return (tot); } Fungsi hitung() memiliki 2 argument (masukan) bertipe integer
22. PASSING BY VALUE #include <stdio.h> int hitung(int a, int b); void main() { int a,b,t; a = 5; b = 2; t = hitung(a,b); printf(“%d”, t); } int hitung(int a, int b) { int tot; tot = a + b; return (tot); } Saat pemanggilan fungsi hitung(), diperlukan 2 parameter (masukan) yang bertipe integer (dalam hal ini a dan b )
23. PASSING BY VALUE #include <stdio.h> int hitung(int a, int b); void main() { int a,b,t; a = 5; b = 2; t = hitung(a,b); printf(“%d”, t); } int hitung(int a, int b) { int tot; tot = a + b; return (tot); } Nilai variabel a dan b yaitu 5 dan 2 akan dikirimkan ke fungsi hitung. 5 2
24. PASSING BY VALUE #include <stdio.h> int hitung(int a, int b); void main() { int a,b,t; a = 5; b = 2; t = hitung(a,b); printf(“%d”, t); } int hitung(int a, int b) { int tot; tot = a + b; return (tot); } Isi variabel a dan b yaitu 5 dan 2 dijumlahkan, dan disimpan ke variabel tot
25. PASSING BY VALUE #include <stdio.h> int hitung(int a, int b); void main() { int a,b,t; a = 5; b = 2; t = hitung(a,b); printf(“%d”, t); } int hitung(int a, int b) { int tot; tot = a + b; return (tot); } Nilai variabel tot yaitu 7 akan dikembalikan (return) ke fungsi hitung() di fungsi main()
26. PASSING BY VALUE #include <stdio.h> int hitung(int a, int b); void main() { int a,b,t; a = 5; b = 2; t = hitung(a,b); printf(“%d”, t); } int hitung(int a, int b) { int tot; tot = a + b; return (tot); } Isi variabel a dan b yaitu 5 dan 2 dijumlahkan, dan disimpan ke variabel tot 7
27. PASSING BY VALUE #include <stdio.h> int hitung(int a, int b); void main() { int a,b,t; a = 5; b = 2; t = hitung(a,b); printf(“%d”, t); } int hitung(int a, int b) { int tot; tot = a + b; return (tot); } Variabel t bernilai 7 dan akan tercetak 7 di layar
29. PASSING BY REFERENCE #include <stdio.h> int CETAK(int *Q); void main() { int A, *P; A = 5; P = &A; CETAK(P); } int CETAK(int *Q) { printf(“%d”, *Q); } Parameter yang dikirim bukan data tapi berupa nilai POINTER (alamat)
30. PASSING BY REFERENCE #include <stdio.h> int CETAK(int *Q); void main() { int A, *P; A = 5; P = &A; CETAK(P); } int CETAK(int *Q) { printf(“%d”, *Q); } Untuk menerima nilai pointer, argumen fungsi juga harus berupa variabel POINTER