week 3-fungsi-header

Post on 31-May-2015

1.095 Views

Category:

Documents

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

Materi Kuliah Algoritma dan Struktur data credit by: http://ardzixia.scgeneration.com

TRANSCRIPT

ALGORITMA DAN STRUKTUR DATA

FUNGSI

JURUSAN TEKNIK ELEKTROUIN SUNAN NGUNUNG DJATI BANDUNG

2012

PERTEMUAN III

REVIEW TUGAS Pemrograman Modular FUNGSI Header Rekursif

KOMPETENSI

Mahasiswa dapat lebih memahami fungsi

Mahasiswa terbiasa menyelesaikan masalah pemrograman dengan menggunakan fungsi

REVIEW

Pemilihan lebih dari 4 kasus

Pemrograman Modular

Untuk mencapai suatu tujuan besar, maka tujuan tersebut harus dibagi-bagi menjadi tujuan yang kecil, hingga tujuan kecil itu merupakan tujuan yang dapat dicapai berdasarkan kondisi dan potensi yang dimiliki. (Muhammad ibn Musa al-Khwarizmi)

Pemrograman Modular

Pernyataan Al-Khawarizmi dapat dijadikan analogi mengenai pemrograman modular.

Pemrograman modular adalah memprogram dengan membagi program menjadi beberapa sub program yang kemudian disebut procedure (prosedur) dan function (fungsi).

Fungsi/Prosedur Prosedur adalah

bagian program yang tidak mengembalikan hasil proses ke bagian pemanggilnya.

Sedangkan fungsi adalah bagian program yang akan mengembalikan suatu nilai hasil dari proses ke bagian pemanggilnya.

Namun, pemrograman dalam bahasa C maupun C++ istilah prosedur tidak digunakan, bagian-bagian program tersebut hanya disebut dengan fungsi.

Dekomposisi program menjadi beberapa buah program

Why, pemrograman modular Menghemat source code <-

>menghindari penulisan instruksi yang dilakukan berulang kali.

Program menjadi terstruktur. Program yang besar dapat dipecah menjadi beberapa program yang lebih kecil.

Kemudahan dalam menulis dan mendebug program.

Melokalisasi kesalahan

Struktur dasar fungsi

type → tipe data dari return value. function_name → nama fungsi argument_list → variable input statement_list → kumpulan instruksi

How A Function Works

A C / C++ program does not execute the statements in a function until the function is called by another part of the program.

When C / C++ function is called, the program can send information to the function in the form of one or more what is called arguments although it is not a mandatory.

When the function finished its processing, program returns to the same location that called the function.

Contoh : Fungsi menukarkan isi dua variabel

#include <stdio.h>

#include<conio.h>

int Baca();

void Tukar(int A, int B);

void Tulis(int A, int B);

main()

{

int A, B;

A = Baca();

B = Baca ();

Tukar(A, B);

getch();

}

int Baca(){

int A;

printf ("Bilangan : ");

scanf ("%d", &A);

return A;

}

void Tukar(int A, int B){

int D;

D = A;

A = B;

B = D;

Tulis(A,B);

Tulis(A,B);

}

void Tulis(int A, int B){

printf (" Setelah ditukar \n");

printf ("Bilangan pertama = %d " , A);

printf ("Bilangan ke dua = %d " , B);

printf ("\n");

}

Output

Prototipe Fungsi deklarasi fungsi dikenal dengan sebutan

prototipe fungsi. Prototipe fungsi berupa : Nama Fungsi Tipe nilai fungsi Jumlah dan tipe parameter Dan diakhiri dengan titik koma, sebagaimana

pada pendeklarasian variabel. Tujuannya memeriksa validitas parameter

dalam pemanggilan fungsi

File header File header yaitu file yang berisi deklarasi

fungsi dan definisi konstanta. Beberapa file-judul sudah disediakan di C

atau C++. File-file ini mempunyai ciri bereksistensi .h. file-file header ini biasanya dipanggil

menggunakan fungsi include. Fungsi include sendiri merupakan salah satu

jenis pengarah praprosesor yang dipakai untuk membaca file-file header itu sendiri.

File header

<math.h> berisi prototipe fungsi untuk pustaka matematika

<stdio.h> berisi prototipe fungsi untuk pustaka baku input/output

<string.h> berisi protipe fungsi untuk pemrosesan string.

... ...

Fungsi Rekursif

Fungsi yang memanggil dirinya sendiri Sangat berguna untuk pengerjaan sorting

atau perhitungan factorial Contoh fungsi faktorial

Contoh Fungsi Rekursif

Buatlah fungsi untuk menghitung nilai faktorial dari bilangan bulat tidak negatif.

Faktorial dari didefinisikan sebagai: n! =1, jika n=0 dan n=1 n!=1x2x3x4x...x(n-1)n, jika n>0

#include<stdio.h>#include<conio.h>int A;int faktorial (int i);

main(){ printf ("Input bilangan A =?"); scanf ("%d", &A); printf("Nilai faktorial %d adalah %d ",A,faktorial(A)); getch();

}

int faktorial(int i){ if(i == 0 || i == 1) return 1; else return (i * faktorial (i-1));}

Tugas Mandiri II

Buatlah tulisan/makalah tentang mengapa algoritma penting dalam membangun sebuah program komputer.

Buat program kalkulator dengan fungsi menjumlahkan, membagi,mengurangi dan mengalikan dua bilangan.

Buatlah program menghitung nilai rata-rata dari n bilangan dengan fungsi hitung rata-rata bilangan dengan input n bilangan.

TELL ME WHAT YOU THINK Tulislah feedback tentang cara saya

mengajar. Terlalu teoritis? Tidak interaktif? Ngomong sendiri?

top related