IT234 ALGORITMA DAN STRUKTUR DATA FUNGSI

dokumen-dokumen yang mirip
Program pendek dan simple = mudah dihandle. Program besar, banyak dan kompleks = tidak

Algoritma & Pemrograman #7. by antonius rachmat c, s.kom, m.cs

Program pendek dan simple = mudah dihandle. Program besar, banyak dan kompleks = tidak

# SEVEN PROCUDURE & FUNCTION

ALGORITMA DAN STRUKTUR DATA POINTER DAN FUNCTION

E STRUKTUR DATA & E PRAKTIK STRUKTUR DATA. Pointer & Function. Alfa Faridh Suni, S.T., M.T. PTIK

Function nama dipisahkan

Scope Variable. Sebuah variabel di dalam sebuah fungsi memiliki jangkauan tertentu. Skop variabel terdiri dari:

MODULAR (FUNGSI)

Algoritma & Pemrograman #8. by antonius rachmat c, s.kom, m.cs

Algoritma Pemrograman 2B (Pemrograman C++)

KONSEP DASAR. menyusunnya menjadi potongan-potongan mudah untuk ditangani dibanding. conquer.

Kurikulum Qt. { Basic OOP } Chapter 4. Function

PROSEDUR DAN FUNGSI (PROCEDURE & FUNCTION)

VI. FUNGSI. Fungsi Main ( ) Fungsi a ( ) Fungsi b ( ) Fungsi c ( ) Fungsi c1 ( ) Fungsi c2 ( ) Fungsi c3 ( ) Bentuk umumnya :

BAB 6 FUNGSI TUJUAN PRAKTIKUM

MODUL 5 SUBPROGRAM / FUNGSI

Sedangkan bentuk umum pendefinisian fungsi adalah : Tipe_fungsi nama_fungsi(parameter_fungsi) { statement statement... }

Kurikulum Qt. Chapter 4 Function. Fungsi

Fungsi, Parameter, Rekursi

Algoritma dan Pemrograman Tahar Agastani Teknik Informatika UIN

Program menjadi terstruktur Dapat mengurangi pengulangan kode program. Fungsi dapat diimplementasikan dalam tiga bentuk :

FUNGSI & PROSEDUR. Pertemuan ke-12 dan 13

Bahasa C melengkapi fasilitas modular dengan menggunakan fungsi pada setiap SubProgram. Contoh pembagian program menjadi beberapa subprogram.

BAB 6. FUNGSI. Tujuan penggunaan fungsi : 1. Program menjadi terstruktur 2. Dapat mengurangi pengulangan kode program.

Fungsi : Dasar Fungsi

Dasar Pemrograman TIP FTP UB

MODUL. Fungsi (Function) Modul Praktikum C++ Dasar Pemrograman Komputer JURUSAN TEKNIK ELEKTRO FAKULTAS TEKNIK

MODUL 10 Fungsi 10.1 Kompetensi 10.2 Alat Dan Bahan: 10.3 Ulasan Teori: Dasar Fungsi Deklarasi Fungsi

Prosedur merupakan modul program yang mengerjakan instruksi spesifik dan menghasilkan efek netto. Efek netto diketahui dengan membandingkan keadan awa

MODUL 7 FUNGSI A. Tujuan. B. Petunjuk. C. Dasar Teori

Fungsi DASAR PEMROGRAMAN

PEMROGRAMAN BERORIENTASI OBJEK

Fungsi DASAR PEMROGRAMAN

FUNCTION (FUNGSI) LOGO. Pendidikan Teknik Elektronika FT UNY. Muh. Izzuddin Mahali, M.Cs.

IT234 - Algoritma dan Struktur Data. Ramos Somya

MODUL ALGORITMA DAN PEMROGRAMAN. STMIK AMIKOM Yogyakarta. Rajif Agung Yunmar, S.Kom., M.Cs.

Function. Function adalah satu blok instruksi yang dieksekusi ketika dipanggil dari bagian lain dalam suatu program. Format dari function :

A. TUJUAN 1. Menjelaskan tentang prinsip dasar fungsi. 2. Menjelaskan tentang.parameter formal dan parameter aktual

PRAKTIKUM 7 FUNGSI 1

Contoh function 1 : Output : // function example The result is 8 #include <iostream.h>

Konsep Pemrograman. Bab 7. Fungsi1. Konsep Pemrograman Politeknik Elektronika Negeri Surabaya 2006 PENS-ITS. Umi Sa adah

BAB V FUNGSI Tujuan : 5.1 Dasar Fungsi

Pertemuan Function. Obyektif Praktikum : 1. Mengerti konsep dasar penggunaan Function

PROCEDURE DAN FUNCTION

8.1 FUNGSI, DEKLARASI DAN DEFINISI NYA

SUB PROGRAM P E N G A N TA R P R O G R A M S T U D I. Institut Teknologi Sumatera

Komentar, Identifier, Konstanta dan Variabel

SUBPROGRAM (SUBRUTIN)

Mengenal Subroutine pada Pemrograman C Dian Wirdasari

Fungsi 1 DASAR PEMROGRAMAN

Fungsi. Tim PHKI Modul Dasar Pemrograman Fakultas Ilmu Komputer UDINUS Semarang

Pemrograman Dasar C. Minggu 6

FUNGSI PADA PYTHON. def <nama_fungsi>(arg1, arg2, arg3,,argn) : <statemen-statemen>

BAB 1 KONSEP DASAR BAHASA C

FUNGSI II. Variabel Statis. Sifat variabel statis: Sintaks: static tipe_data nama_variabel; Contoh: static int angka;

FUNGSI DALAM BAHASA C

FUNGSI DALAM BAHASA C

Pendahuluan Pemrograman Mikrokontroler

OPERASI PERNYATAAN KONDISI

Spesifikasi: Ukuran: 14x21 cm Tebal: 225 hlm Harga: Rp Terbit pertama: Februari 2005 Sinopsis singkat:

FUNCTIONS. Function adalah satu blok instruksi yang akan dieksekusi ketika dipanggil dari bagian lain dalam suatu program.

SOAL C++ Created by Yuli Astuti,S.Kom Copyright 2009

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LABSHEET ALGORITMA DAN STRUKTUR DATA

Konsep Dasar Pemrograman Dan Pengenalan C++

BAB VI BAHASA C Pendahuluan

Konsep Pemrograman. Bab 8. Fungsi 2. Konsep Pemrograman Politeknik Elektronika Negeri Surabaya 2006 PENS-ITS. Umi Sa adah

Alpro & Strukdat 1 C++ (Sub Program) Dwiny Meidelfi, S.Kom., M.Cs.

# Finally: ELEVEN Function Parameter by Value and by Reference

2. Uraian Materi. a. Pengertian Fungsi

Praktikum Modul Praktikum ke Judul Materi Tujuan / Sasaran Waktu (lama) Aplikasi yang digunakan

MODUL ALGORITMA DAN PEMROGRAMAN. STMIK AMIKOM Yogyakarta. Rajif Agung Yunmar, S.Kom., M.Cs.

Teknik Pemrograman Terstruktur 1 PENGENALAN BAHASA C

/* File program : tukar1.c Untuk melihat pengaruh pemanggilan nilai pada fungsi untuk penukaran dua data */

December 11 PROSEDUR AKHMAD BILYYASIF.

1. Standard Library Function adalah fungsi-fungsi yang telah disediakan oleh Interpreter Python dalam file-file atau librarynya.

Fungsi 2 DASAR PEMROGRAMAN

Algoritma dan Pemrograman. Pertemuan Ke-11 Function

Algoritma & Pemrograman #9. by antonius rachmat c, s.kom, m.cs

Apakah Anda sering kesulitan untuk

Algoritma Pemrograman. Fery Updi,M.Kom

Pemgrograman Modular. Keuntungan:

Kurikulum Qt. Chapter 5 Pointer dan References. Agenda. Apa itu Pointer? Memory Komputer. Mengambil Alamat Memory dari Variabel

POKOK BAHASAN - 2 PEMROGRAMAN MODULAR

IT132 Dasar-Dasar Pemrograman. Ramos Somya, S.Kom., M.Cs.

C Programming (re-view)

Part 2 - Algoritma & Pemrograman Konsep dasar Pemrograman

Pertemuan 4 ELEMEN-ELEMEN BAHASA PEMROGRAMAN

Pemrograman Dasar M E T H O D / F U N G S I

int fungsi_2() { int main() { fungsi_1(); fungsi_2(); return 0;

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA

Pengantar dalam Bahasa Pemrograman Turbo Pascal Tonny Hidayat, S.Kom

Prosedur dan Fungsi di Turbo Pascal

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA

Array LOGO. Pendidikan Teknik Elektronika FT UNY. Muh. Izzuddin Mahali, M.Cs.

Pemrograman Dasar C. Minggu 8

BAB II TEORI DASAR. Gambar 1 Kurva untuk interpolasi linier. Sehingga diperoleh persamaan dari interpolasi linier sebagai berikut :

PROCEDURE. Bentuk Umum : PROGRAM judul_program ; PROCEDURE judul_prosedur ; Begin Statement prosedur ; End ; Begin Statement program utama ; end.


TIM ASISTEN PRAKTIKUM ALGORITMA DAN PEMROGRAMAN 2016

Transkripsi:

IT234 ALGORITMA DAN STRUKTUR DATA FUNGSI Ramos Somya

Fungsi Fungsi/function adalah suatu kumpulan instruksi/ perintah/program yang dikelompokkan menjadi satu, letaknya terpisah dari program yang menggunakan fungsi tersebut, memiliki nama tertentu yang unik, dan digunakan untuk mengerjakan suatu tujuan tertentu. Dalam bahasa pemrograman lain fungsi dapat disebut sebagai subrutin (basic, VB) atau procedure (pascal, Delphi)

Keuntungan Penggunaan Fungsi Dapat melakukan pendekatan top-down dan divide-andconquer: Top-down: penelusuran program mudah Divide-and-conquer: program besar dapat dipisah menjadi programprogram kecil. Kode program menjadi lebih pendek, mudah dibaca, dan mudah dipahami Program dapat dikerjakan oleh beberapa orang sehingga program cepat selesai dengan koordinasi yang mudah. Mudah dalam mencari kesalahan-kesalahan karena alur logika jelas dan sederhana Kesalahan dapat dilokalisasi dalam suatu modul tertentu saja. Modifikasi program dapat dilakukan pada suatu modul tertentu saja tanpa mengganggu program keseluruhan

Keuntungan Fungsi Fungsi fungsi menjadikan program mempunyai struktur yang jelas. Dengan memisahkan langkah-langkah detail ke satu atau lebih fungsi -fungsi, maka fungsi utama (main) akan menjadi lebih pendek, jelas dan mudah dimengerti. Fungsi-fungsi digunakan untuk menghindari penulisan program yang sama yang ditulis secara berulang-ulang. Langkah-langkah tersebut dapat dituliskan sekali saja secara terpisah dalam bentuk fungsi. Selanjutnya bagian program yang membutuhkan langkah-langkah ini tidak perlu selalu menuliskannya, tidak cukup memanggil fungsi tersebut. Mempermudah dokumentasi. Reusability: Suatu fungsi dapat digunakan kembali oleh program atau fungsi lain

Kategori Fungsi dalam C Standard Library Function Yaitu fungsi-fungsi yang telah disediakan oleh C dalam file-file header atau librarynya. Misalnya: clrscr(), printf(), getch() Untuk function ini kita harus mendeklarasikan terlebih dahulu library yang akan digunakan, yaitu dengannmenggunakan preprosesor direktif. Misalnya: #include <conio.h> Programmer-Defined Function Adalah function yang dibuat oleh programmer sendiri. Function ini memiliki nama tertentu yang unik dalam program, letaknya terpisah dari program utama, dan bisa dijadikan satu ke dalam suatu library buatan programmer itu sendiri yang kemudian juga di-includekan jika ingin menggunakannya.

Perancangan Fungsi Dalam membuat fungsi, perlu diperhatikan: Data yang diperlukan sebagai inputan Informasi apa yang harus diberikan oleh fungsi yang dibuat ke pemanggilnya Algoritma apa yang harus digunakan untuk mengolah data menjadi informasi

Contoh Fungsi

Contoh Fungsi

Struktur Fungsi Deklarasi fungsi diakhiri dengan titik koma Deklarasi function (function prototype/ declaration), terdiri dari: Judul fungsi Tipe data yang akan dikembalikan/void Tidak ada kode implementasi function tersebut Bentuk umum: tipe_data void nama_fungsi([arguman 1, argument 2,.]);

Struktur Fungsi Tipe_data dapat berupa segala tipe data yang dikenal C ataupun tipe data buatan, namun tipe data dapat juga tidak ada dan digantikan dengan void yang berarti fungsi tersebut tidak mengembalikan nilai apapun Nama fungsi adalah nama yang unik Argumen dapat ada atau tidak (opsional) yang digunakan untuk menerima argumen/parameter. Antar argumen-argumen dipisahkan dengan menggunakan tanda koma.

Struktur Fungsi Suatu fungsi perlu dideklarasikan sebelum digunakan. Untuk alasan dokumentasi program yang baik, sebaiknya semua fungsi yang digunakan dideklarasikan terlebih dahulu Deklarasi fungsi ditulis sebelum fungsi tersebut digunakan

Struktur Fungsi Tubuh Function/Definisi Function (Function Definition), terdiri dari: function prototype yang disertai dengan kode implementasi dari function tersebut, yang berisikan statemen/instruksi yang akan melakukan tugas sesuai dengan tujuan dibuatnya fungsi tersebut.

Bentuk Umum Bentuk Umum : tipe_data/void nama_fungsi ([argumen 1, argumen 2, ]) { [variabel lokal;] [Statement_1;] [Statement_2;]... [Statement_n;] [return (variabel)]; }

Definisi Fungsi Tubuh fungsi dapat berisi segala perintah yang dikenal oleh C, pada dasarnya tubuh fungsi sama dengan membuat program seperti biasa. Return bersifat opsional, adalah keyword pengembalian nilai dari fungsi ke luar fungsi, return wajib jika fungsi tersebut mengembalikan nilai berupa tipe data tertentu, sedangkan return tidak wajib jika fungsi tersebut bersifat void.

Contoh Deklarasi dan Definisi Fungsi

Deklarasi dan Definisi Karena prinsip kerja program C sekuensial, maka : Jika bagian dari program yang menggunakan fungsi diletakkan sebelum definisi dari fungsi, maka deklarasi dari fungsi diperlukan. Akan tetapi jika bagian dari program yang menggunakan fungsi terletak setelah definisi dari fungsi, maka deklarasi dari fungsi dapat tidak dituliskan.

Jenis Fungsi dalam C Ada dua (2) jenis fungsi dalam C yaitu : Fungsi yang tidak mengembalikan nilai (void) Fungsi yang mengembalikan nilai (nonvoid)

Fungsi Void Fungsi yang void sering disebut juga prosedur Disebut void karena fungsi tersebut tidak mengembalikan suatu nilai keluaran yang didapat dari hasil proses fungsi tersebut. Ciri-cirinya : Tidak adanya keyword return. Tidak adanya tipe data di dalam deklarasi fungsi. Menggunakan keyword void. Tidak dapat langsung ditampilkan hasilnya Tidak memiliki nilai kembalian fungsi

Fungsi Non Void Fungsi non-void disebut juga function Disebut non-void karena mengembalikan nilai kembalian yang berasal dari keluaran hasil proses function tersebut Ciri-cirinya : Ada keyword return Ada tipe data yang mengawali deklarasi fungsi Tidak ada keyword void Memiliki nilai kembalian Dapat dianalogikan sebagai suatu variabel yang memiliki tipe data tertentu sehingga dapat langsung ditampilkan hasilnya.

Contoh Fungsi Void dan Non-void Void : Non-void : void tampilkan_jml(int a,int b) { int jml; jml = a + b; printf( %d,jml); } int jumlah(int a,int b) { int jml; jml = a + b; return jml; }

Keyword void Keyword void juga digunakan jika suatu function tidak mengandung suatu parameter apapun. void print_error (void) { printf( Error : unexpected error occurred! ); }

The Main Function Fungsi yang selalu ada pada program C adalah fungsi main. Function main() dibutuhkan agar program C dapat dieksekusi! Tanpa function main, program C dapat dicompile tapi tidak dapat dieksekusi (harus dengan flag parameter c, jika di UNIX) Pada saat program C dijalankan, maka compiler C pertama kali akan mencari function main() dan melaksanakan instruksi-instruksi yang ada di sana. Function main, sering dideklarasikan dalam 2 bentuk: int main() void main()

int main ( ) Berarti di dalam function main tersebut harus terdapat keyword return di bagian akhir fungsi dan mengembalikan nilai bertipe data int, Mengapa hasil return harus bertipe int juga? Karena tipe data yang mendahului fungsi main() diatas dideklarasikan int Tujuan nilai kembalian berupa integer adalah untuk mengetahui status eksekusi program. Jika terminated successfully (EXIT_SUCCESS) maka, akan dikembalikan status 0, sedangkan jika terminated unsuccessfully (EXIT_FAILURE) akan dikembalikan nilai status tidak 0, biasanya bernilai 1 Biasanya dipakai di lingkungan UNIX

void main Berarti berupa function yang void sehingga tidak mengembalikan nilai status program sehingga nilai status program tidak bisa diketahui Biasanya dipakai pada program C di lingkungan Windows

Bentuk Pemanggilan Fungsi Pada dasarnya fungsi dapat memanggil fungsi lain, bahkan fungsi dapat memanggil dirinya sendiri (rekursif)

Scope Variabel Sebuah variabel di dalam sebuah fungsi memiliki jangkauan tertentu. Skop variabel terdiri dari: Variabel lokal Variabel global Variabel statis

Variabel Lokal Variabel yang hanya dikenal di daerah yang lokal saja, misalnya di dalam sebuah fungsi/prosedur tertentu saja dan tidak dikenal di daerah lainnya. Harus dideklarasikan di dalam blok yang bersangkutan Variabel lokal dibentuk ketika fungsi dipanggil dan akan dihapus dari memori bila eksekusi terhadap fungsi selesai. Tidak ada inisialisasi otomatis

Variabel Lokal

Variabel Lokal

Variabel Lokal

Variabel Lokal

Variabel Global Variabel yang dikenal diseluruh daerah di dalam program, di dalam dan luar fungsi. Dideklarasikan di luar suatu blok statemen atau di luar fungsi-fungsi yang menggunakannya. Variabel global dapat dideklarasikan kembali di dalam fungsi. (redeclare) Kerugian penggunaan variabel global: Memboroskan memori computer karena computer masih menyimpan nilainya walaupun sudah tidak diperlukan lagi. Mudah terjadi kesalahan program karena satu perubahan dapat menyebabkan perubahan menyeluruh pada program. Pembuatan fungsi lebih sulit, karena harus diketahui variable global apa saja yang digunakan. Pendeteksian kesalahan program lebih sulit dilakukan.

Pengenalan Variabel Jika dalam sebuah fungsi terdapat variabel a dan di dalam program utama juga terdapat variabel a juga (nama sama), maka variabel yang dipakai tergantung dari siapa yang mengaksesnya. Jika yang mengakses adalah fungsi, maka variabel yang dipakai adalah variabel lokal, jika yang mengakses adalah program utama, maka yang dipakai adalah variabel dalam program utama.

Variabel Statis Jika variabel statis bersifat lokal, maka hanya dikenal dalam fungsi tersebut saja. Jika variabel statis bersifat global, maka dikenal di seluruh program Inisialasisai hanya dilakukan sekali, yaitu pada saat fungsi dipanggil pertama kali. Adalah variabel yang memiliki nilai tetap, artinya nilai dari variabel tersebut akan tetap diingat oleh program, sehingga dapat digunakan untuk menyimpan state nilai pada saat pemanggilan fungsi berikutnya. Nilai variabel statis akan bernilai sama dengan nilai terakhirnya.

Argumen Fungsi Sebuah fungsi bisa memiliki argumen-argumen yang bersifat opsional. Argumen-argumen tersebut berfungsi sebagai parameter inputan yang berupa variabel-variabel bagi fungsi tersebut (bersifat lokal). Argumen harus bertipe data tertentu. Terdapat 2 jenis parameter: Parameter formal: parameter yang ditulis pada deklarasi fungsi. Parameter aktual: parameter yang diinputkan dalam program pemanggil fungsi tersebut. Dapat berupa variabel atau langsung berupa nilai tertentu sesuai dengan tipe data yang dideklarasikan untuk masingmasing parameter fungsi

Parameter Formal dan Aktual

Pengiriman Parameter Komunikasi antar fungsi dilakukan dengan saling bertukar data Hasil dari suatu fungsi dapat diperoleh dari hasil baliknya (return), atau dengan variabel Global hasil proses dari suatu fungsi dapat diperoleh, karena variabel yang dipakai dalam fungsi bersifat global. Selain dengan cara tersebut di atas, hasil dapat juga diperoleh dari parameter aktual yang dikirimkan ke parameter formal, karena parameter formal seolah-olah akan mengirimkan kembali nilai hasil proses dalam fungsi.

Pengiriman Parameter Pengiriman secara nilai (by value) Secara default pengiriman parameter di dalam C adalah by value Pengubahan nilai di dalam fungsi tidak bisa mengubah nilai di luar fungsi Pengiriman secara acuan (by reference) Tunggu di struktur data

Pengiriman secara Nilai (by Value) Yang dikirimkan ke fungsi adalah nilainya, bukan alamat memori letak dari datanya. Fungsi yang menerima kiriman nilai ini akan menyimpannya di alamat terpisah dari nilai aslinya yang digunakan oleh program yang memanggil fungsi tersebut Karena itulah pengubahan nilai di dalam fungsi tidak akan berpengaruh pada nilai asli di program yang memanggil fungsi walaupun keduanya menggunakan nama variabel yang sama Pengiriman by value adalah pengiriman searah, dari program pemanggil fungsi ke fungsi yang dipanggilnya Pengiriman by value dapat dilakukan untuk suatu statement, tidak hanya untuk suatu variabel, value, array atau konstanta saja.

Pengiriman secara Nilai (by Value)

Pengiriman secara Nilai (by Value)

Pengiriman secara Nilai (by Value)

Rekursi Berbeda dengan fungsi sebelumnya, jika fungsi sebelumnya dipanggil dari bagian lain di luar tubuh yang bersangkutan. Sedang REKURSI adalah fungsi yang memanggil dirinya sendiri,artinya fungsi tersebut dipanggil di dalam tubuh fungsi itu sendiri.

Contoh #include<stdio.h> int pangkat(int x, int n); main() { int x, y, hasil; printf("masukkan nilai x: "); scanf("%d",&x); printf("masukkan nilai y: "); scanf("%d",&y); printf("nilai dari %d ^ %d = %d",x,y, pangkat(x, y)); } int pangkat(int x, int n) { if(n==1){ return (x); } else { return (x * pangkat(x, n-1)); } }