Upload presentasi
Presentasi sedang didownload. Silahkan tunggu
Diterbitkan olehIndra Sugiarto Hardja Telah diubah "6 tahun yang lalu
1
Apa itu Fungsi? Sebuah fungsi adalah modul program yang mengerjakan tugas atau aktivitas yang spesifik dan mengembalikan sebuah nilai dari tipe tertentu, baik tipe dasar atau tipe bentukan. Baik fungsi maupun prosedur, keduanya merupakan modul program yang ekivalen, namun pada beberapa masalah ada kalanya kita lebih tepat menggunakan fungsi ketimbang prosedur, demikian juga sebaliknya. Sumber Kepustakaan : abdill01.files.wordpress.com/.../pertemuan-12-fun...
2
Notasi Algoritmik Fungsi
function Nama_Fungsi (input parameter) { Berisi penjelasan apa yang dikembalikan fungsi } DEKLARASI { Semua nama yang dipakai di dalam fungsi } ALGORITMA: { Badan prosedur, berisi urutan instruksi } return ekspresi { Pengembalian nilai yang dihasilkan fungsi} Sumber Kepustakaan : abdill01.files.wordpress.com/.../pertemuan-12-fun...
3
Pemanggilan Fungsi Fungsi dipanggil dari program pemanggil dengan
menuliskan nama_fungsi diikuti dengan parameter aktual. Nilai yang dikembalikan fungsi dapat diperlakukan dengan dua cara: Nilai yang dikembalikan oleh fungsi dapat langsung dimanipulasi. Nilai yang dikembalikan oleh fungsi ditampung dalam sebuah peubah yang bertipe sama dengan tipe fungsi. Sumber Kepustakaan : abdill01.files.wordpress.com/.../pertemuan-12-fun...
4
Contoh PROGRAM Genap_Ganjil
{ Menentukan apakah sebuah bilangan genap atau ganjil } DEKLARASI x : integer function Genap(input n : integer) int ALGORITMA: read (x) if Genap(x)=0 then write(‘genap’) else write(‘ganjil’) endif Sumber Kepustakaan : abdill01.files.wordpress.com/.../pertemuan-12-fun...
5
Contoh Algoritma Fungsi
function Genap(input n : integer) int {Mengembalikan 0 jika n genap atau 1 jika ganjil } DEKLARASI {tidak ada} ALGORITMA: return (n mod 2) Sumber Kepustakaan : abdill01.files.wordpress.com/.../pertemuan-12-fun...
6
/* PROGRAM Genap_Ganjil */
{ Menentukan apakah sebuah bilangan genap atau ganjil } #include <stdio.h> int Genap(int n); void main() { int x; cetak ("Ketikkan sebuah bilangan:");baca ("%d",&x); if (Genap(x)== 0) cetak ("%d adalah bilangan genap \n", x); else cetak ("%d adalah bilangan ganjil \n", x); } int Genap(int n) return (n % 2); Sumber Kepustakaan : abdill01.files.wordpress.com/.../pertemuan-12-fun...
7
Fungsi Rekursif Fungsi rekursif adalah suatu fungsi yang memanggil dirinya sendiri. Jadi di dalam fungsi tersebut terdapat suatu baris program yang memanggil dirinya sendiri. Proses rekursi tersebut terjadi secara berulang-ulang, sehingga di dalam fungsi rekursif harus diberi suatu kondisi yang dapat mengakhiri proses rekursi. Sebuah contoh yang sering diberikan dalam rangka membahas fungsi rekursif adalah menghitung Faktorial . Sumber Kepustakaan : abdill01.files.wordpress.com/.../pertemuan-12-fun...
8
Contoh Fungsi Rekursif
Misalkan F = faktorial (5) Sumber Kepustakaan : abdill01.files.wordpress.com/.../pertemuan-12-fun...
9
Algoritma Program Hitung_Faktorial
PROGRAM Hitung_Faktorial {Menghitung n faktorial, n > 0} DEKLARASI n, f : integer function Fak (input N : integer) integer ALGORITMA: read (n) if n<0 then write (warning) else f ← Fak (n) write (n! = f) Sumber Kepustakaan : abdill01.files.wordpress.com/.../pertemuan-12-fun...
10
Algoritma Fungsi Faktorial
function Fak (input N : integer) integer { Mengembalikan nilai N faktorial} DEKLARASI faktorial : integer ALGORITMA: if N<0 then return 1 else faktorial ← N * Fak (N-1) return (faktorial) Sumber Kepustakaan : abdill01.files.wordpress.com/.../pertemuan-12-fun...
11
Mengubah Prosedur menjadi Fungsi
Prosedur yang mempunyai satu buah parameter keluaran dapat ditulis dengan cara menyatakan parameter keluaran sebagai nilai yang dikembalikan oleh fungsi. Sumber Kepustakaan : abdill01.files.wordpress.com/.../pertemuan-12-fun...
12
Prosedur Hitung_Luas #include<stdio.h> void HitungLuas(float alas, float tinggi, float *luas); void main() { int i, N; float a, t, L; printf("Masukkan banyaknya segitiga = "); scanf("%d",&N); for (i=1; i<=N; i++) printf("Masukkan alas segitiga = "); scanf("%f",&a); printf("Masukkan tinggi segitiga = "); scanf("%f",&t); HitungLuas(a, t, &L); printf("Luas segitiga adalah = %.2f \n", L); } void HitungLuas(float alas, float tinggi, float *luas) *luas = (alas*tinggi)*0.5; Sumber Kepustakaan : abdill01.files.wordpress.com/.../pertemuan-12-fun...
13
Fungsi Hitung_Luas #include<stdio.h> float HitungLuas(float alas, float tinggi); void main() { int i, N; float a, t; printf("Masukkan banyaknya segitiga = "); scanf("%d",&N); for (i=1; i<=N; i++) printf("Masukkan alas segitiga = "); scanf("%f",&a); printf("Masukkan tinggi segitiga = "); scanf("%f",&t); printf("Luas segitiga adalah = %.2f \n", HitungLuas(a,t)); } float HitungLuas(float alas, float tinggi) return (alas*tinggi)*0.5; Sumber Kepustakaan : abdill01.files.wordpress.com/.../pertemuan-12-fun...
14
Mengubah Fungsi menjadi Prosedur
Sebuah fungsi dapat dikonversi sebagai prosedur dengan cara menyatakan nilai yang dikembalikan oleh fungsi tersebut sebagai parameter keluaran pada prosedur. Sumber Kepustakaan : abdill01.files.wordpress.com/.../pertemuan-12-fun...
15
Fungsi Genap #include <stdio.h> int Genap(int n); void main() {
int x; printf("Ketikkan sebuah bilangan:");scanf("%d",&x); if (Genap(x)== 0) printf("%d adalah bilangan genap \n", x); else printf("%d adalah bilangan ganjil \n", x); } int Genap(int n) return (n % 2); Sumber Kepustakaan : abdill01.files.wordpress.com/.../pertemuan-12-fun...
16
Prosedur Genap #include <stdio.h>
void Genap(int n, int *boolean); void main() { int x, boolean; printf("Ketikkan sebuah bilangan:");scanf("%d",&x); Genap(x, &boolean); if (boolean == 0) printf("%d adalah bilangan genap \n", x); else printf("%d adalah bilangan ganjil \n", x); } void Genap(int n, int *boolean) *boolean = (n % 2); Sumber Kepustakaan : abdill01.files.wordpress.com/.../pertemuan-12-fun...
Presentasi serupa
© 2024 SlidePlayer.info Inc.
All rights reserved.