Fungsi - dinus.ac.id · Fungsi •Fungsi adalah pemetaan suatu domain ke range berdomain tertentu....

21
Fungsi Nisa’ul Hafidhoh [email protected] 08156114760

Transcript of Fungsi - dinus.ac.id · Fungsi •Fungsi adalah pemetaan suatu domain ke range berdomain tertentu....

Fungsi

Nisa’ul Hafidhoh

[email protected]

08156114760

Paradigma Pemrograman

Paradigma Pemrograman

Deklaratif / predikatif

Object Oriented

Fungsional

Prosedural / imperatif

2

Paradigma Fungsional

• Didasari oleh konsep pemetaaan dan fungsi pada matematika.

• Fungsi dapat berbentuk sebagai fungsi "primitif", atau komposisi dari fungsi-fungsi lain yang telah terdefinisi.

• Dasar pemecahan masalah: Transformasional

– Suatu rantai transformasi dari sebuah keadaan awal menuju ke suatu rantai keadaan akhir, yang mungkin melalui proses antara.

3

Fungsi

• Fungsi adalah pemetaan suatu domain ke range berdomain tertentu.

• Secara algoritmik, sebuah fungsi akan menerima suatu nilai yang diberikan lewat parameter formal bertype tertentu (jika ada) dan menghasilkan suatu nilai sesuai dengan domain yang didefinisikan dalam spesifikasi fungsi.

– Parameter formal : Nilai masukan yang diberi nama dan dijelaskan typenya

4

Contoh Fungsi Matematika

• Fungsi f(x) dengan satu parameter x didefinisikan sebagai: f(x) = x2 + 3x – 5

– jika x = 4 maka f(x) akan menghasilkan 23

– jika x = 1 maka f(x) akan menghasilkan -1

• f(x,y) = x2 + 3xy - 5y – 1 adalah fungsi dengan dua parameter x dan y

– jika diberi harga x = 0 dan y = 0 maka f(x,y) akan menghasilkan -1

– jika diberi harga x = 1 dan y=0 maka f(x,y) akan menghasilkan 0

5

Spesifikasi Fungsi

• Sebelum digunakan (dipanggil), suatu fungsi harus dideklarasikan dan didefinisikan terlebih dahulu.

• Bentuk umum pendeklarasian fungsi :

function nama_fungsi(parameter_fungsi) -> tipe_fungsi;

• Sedangkan bentuk umum pendefinisian fungsi :

function nama_fungsi(parameter_fungsi) -> tipe_fungsi

{

statement

statement

.……...

->kembalian_fungsi

} 6

Notasi Definisi Fungsi

function NAMAFUNGSI (<list-parameter-input>) → <type hasil> { Spesifikasi fungsi: diberikan ... menghasilkan ... }

KAMUS LOKAL { Semua nama yang dipakai dalam algoritma/realisasi fungsi }

ALGORITMA { Deretan instruksi algoritmik : assignment, input, output, analisis kasus, pengulangan } { Pengiriman harga di akhir fungsi, harus sesuai dengan type hasil} → hasil

Contoh:

function Tambah (x:integer, y:integer) → integer {Diberikan x dan y integer, menghasilkan integer hasil tambah x dan y }

KAMUS LOKAL

ALGORITMA → ( x + y )

7

Pemanggilan Fungsi

Program POKOKPERSOALAN {Spesifikasi : Input, Proses, Output}

KAMUS { Semua nama yang dipakai dalam algoritma } function NAMAF (<list nama parameter formal/input>) → <type hasil>

ALGORITMA { Deretan instruksi pemberian nilai, input, output, analisis kasus, pengulangan yang memakai fungsi } { Harga yang dihasilkan fungsi juga dapat dipakai dalam ekspresi } nama ← NAMAFUNGSI(<list parameter aktual>) output ( NAMAFUNGSI(<list parameter aktual>) ) { Harga yang dihasilkan fungsi juga dapat dipakai dalam ekspresi }

8

Contoh Pemanggilan Fungsi

• Fungsi yang telah dideklarasi dan didefinisikan dapat dipanggil oleh program utama / fungsi lain

Program ContohTambah {Dibaca masukan x dan y dan menuliskan hasil penjumlahannya}

KAMUS x : integer { data } y : integer { data } jumlah : integer { Hasil penjumlahan x dan y} function Tambah(x,y:integer) → integer

ALGORITMA input (x,y) jumlah ← Tambah(x,y) output (jumlah)

9

Contoh dalam Program

10

#include <stdio.h> #include <stdlib.h> int Tambah(int a, int b); //deklarasi fungsi int a,b,c; main() { printf("masukkan a: ");scanf("%d",&a); printf("masukkan b: ");scanf("%d",&b); //pemanggilan fungsi c=Tambah(a,b); printf(“Hasil Penjumlahan= %d",c); } int Tambah(int a, int b) { //definisi fungsi return(a+b); }

#include <stdio.h> #include <stdlib.h> int Tambah(int a, int b); //deklarasi fungsi int a,b,c; main() { printf("masukkan a: ");scanf("%d",&a); printf("masukkan b: ");scanf("%d",&b); //pemanggilan fungsi c=Tambah(a,b); printf(“Hasil Penjumlahan= %d",c); } int Tambah(int a, int b) { //definisi fungsi return(a+b); }

Tampilan Program

11

Fungsi Terdefinisi

• Fungsi Pustaka / library function

• Fungsi yang sudah diberikan oleh sistem dan tinggal dipakai (dipanggil).

• Fungsi terdefinisi selalu diberikan daftar dan spesifikasinya (domain + range).

12

Fungsi Pustaka – Operasi String [1]

Fungsi Operasi String (tersimpan dalam header file “string.h”)

♦ strcpy()

• Berfungsi untuk menyalin suatu string asal ke variable string tujuan.

• Bentuk umum : strcpy(var_tujuan, string_asal);

♦ strlen()

• Berfungsi untuk memperoleh jumlah karakter dari suatu string.

• Bentuk umum : strlen(string);

13

Contoh Program

14

♦ strcat() • Digunakan untuk menambahkan string sumber ke bagian akhir

dari string tujuan. • Bentuk umum : strcat(tujuan, sumber); ♦ strupr() • Digunakan untuk mengubah setiap huruf dari suatu string

menjadi huruf capital. • Bentuk umum : strupr(string); ♦ strlwr() • Digunakan untuk mengubah setiap huruf dari suatu string

menjadi huruf kecil semua. • Bentuk umum : strlwr(string);

Fungsi Pustaka – Operasi String [1]

15

Contoh Program

16

Fungsi Operasi Karakter (tersimpan dalam header “ctype.h”)

♦ islower() • Fungsi akan menghasilkan nilai benar (bukan nol) jika karakter

merupakan huruf kecil. • Bentuk umum : islower(char);

♦ isupper() • Fungsi akan menghasilkan nilai benar (bukan nol) jika karakter

merupakan huruf kapital. • Bentuk umum : isupper(char);

Fungsi Pustaka – Operasi Karakter [1]

17

♦ isdigit() • Fungsi akan menghasilkan nilai benar (bukan nol) jika karakter

merupakan sebuah digit. • Bentuk umum : isdigit(char); ♦ tolower() • Fungsi akan mengubah huruf capital menjadi huruf kecil. • Bentuk umum : tolower(char); ♦ toupper() • Fungsi akan mengubah huruf kecil menjadi huruf kapital. • Bentuk umum : toupper(char);

Fungsi Pustaka – Operasi Karakter [2]

18

Contoh Program

19

Fungsi Operasi Matematik (tersimpan dalam header “math.h” dan “stdlib.h”)

♦ sqrt()

• Digunakan untuk menghitung akar dari sebuah bilangan.

• Bentuk umum : sqrt(bilangan);

♦ pow()

• Digunakan untuk menghitung pemangkatan suatu bilangan.

• Bentuk umum : pow(bilangan, pangkat);

Fungsi Pustaka – Operasi Matematik

20

Contoh Program

21