Fungsi, Parameter, Rekursi

dokumen-dokumen yang mirip
BAB 6 FUNGSI TUJUAN PRAKTIKUM

Algoritma Pemrograman 2B (Pemrograman C++)

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

Fungsi DASAR PEMROGRAMAN

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

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

FUNGSI & PROSEDUR. Pertemuan ke-12 dan 13

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

IT234 ALGORITMA DAN STRUKTUR DATA FUNGSI

Fungsi DASAR PEMROGRAMAN

ALGORITMA DAN STRUKTUR DATA POINTER DAN FUNCTION

DIKTAT MATA KULIAH PEMROGRAMAN I BAB XI POINTER

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA

Konsep Pemrograman. Bab 13. Pointer 3. Konsep Pemrograman Politeknik Elektronika Negeri Surabaya 2006 PENS-ITS. Umi Sa adah

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

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET BAHASA PEMROGRAMAN Fungsi : Passing Parameter by Value & Semester 3

A. TUJUAN 1. Memecah program dalam fungsi fungsi yang sederhana. 2. Menjelaskan tentang pemrograman terstruktur.

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

Mengenal Subroutine pada Pemrograman C Dian Wirdasari

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

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

POINTER DASAR PEMROGRAMAN

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

Function nama dipisahkan

MODUL 5 SUBPROGRAM / FUNGSI

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

xxxx alamat Praktikum 11 POINTER

Fungsi 2 DASAR PEMROGRAMAN

Algoritma dan Pemrograman Tahar Agastani Teknik Informatika UIN

POINTER II. Oleh : Mike Yuliana PENS-ITS

Algoritma dan Struktur Data. Pertemuan 5 Pointer

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

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

Algoritma dan Pemrograman Lanjut. Pertemuan Ke-5 Rekursif

Fungsi Lanjut DASAR PEMROGRAMAN

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

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

PROCEDURE DAN FUNCTION

FUNGSI DALAM BAHASA C

BAB V FUNGSI Tujuan : 5.1 Dasar Fungsi

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

Fungsi : Dasar Fungsi

FUNGSI DALAM BAHASA C

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

Pertemuan 4 ELEMEN-ELEMEN BAHASA PEMROGRAMAN

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

10.1 DASAR FUNGSI PADA BAHASA C

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LABSHEET ALGORITMA DAN STRUKTUR DATA

PEMROGRAMAN BERORIENTASI OBJEK

Algoritma dan Pemrograman. Pertemuan Ke-11 Function

Kurikulum Qt. { Basic OOP } Chapter 4. Function

Algoritma dan Struktur Data. Pointer Pada Struct

PRAKTIKUM 12 POINTER 2

PRAKTIKUM 7 FUNGSI 1

December 11 PROSEDUR AKHMAD BILYYASIF.

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

MODUL. Pointer. Modul Praktikum C++ Dasar Pemrograman Komputer JURUSAN TEKNIK ELEKTRO FAKULTAS TEKNIK

Array (Larik) Modul 7

ALGORITMA & PEMROGRAMAN II ARRAY

MAKALAH POINTER PADA BAHASA C

Pointer. Yuliana Setiowati

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

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

Kurikulum Qt. Chapter 4 Function. Fungsi

ARRAY DIMENSI SATU Setiap elemen array dapat diakses melalui indeks. Indeks array secara default dimulai dari 0.

Algoritma Pemrograman. Fery Updi,M.Kom

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

PEMROGRAMAN DAN METODE NUMERIK Semester 2/ 2 sks/ MFF 1024

SL 1201 Materi tentang Fungsi

Pertemuan 6. Pemrograman Modular

Fungsi (Function) Pendahuluan. Objektif. Bahan Bacaan

Pengenalan C++ Oleh : Dewi Sartika

Algoritma dan Pemrograman Lanjut. Pertemuan Ke-7 Pencarian (Searching) 2

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

Minggu ke-11 Fungsi (Function)

Tabel Informasi. Hal di atas dapat dilakukan dengan menambah dan mengambil atribut identifier yang digunakan pada program, melalui tabel informasi.

Fungsi 1 DASAR PEMROGRAMAN

Tipe Data, Variabel, Input/Output

PERTEMUAN V PEMROGRAMAN TERSTRUKTUR DENGAN VISUAL C Setiap bahasa C mempunyai satu fungsi dengan nama main (program utama).

Struktur Dasar Bahasa C Tipe Data Dalam bahasa C terdapat lima tipe data dasar, yaitu :

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

KONSEP PEMROGRAMAN PRAKTIKUM 15 FUNGSI PARAMETER PASS BY VALUE & PREFERENCE

2 BEBERAPA FUNGSI PUSTAKA DALAM BAHASA C

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

TIM ASISTEN PRAKTIKUM ALGORITMA DAN PEMROGRAMAN 2016

12/29/2011 ILKOM IPB 1. Algoritme dan Pemrograman. Address and Pointers. Pointer

SUB PROGRAM (FUNGSI)

Bab 10 Fungsi & Prosedur


PRAKTIKUM 19 : ARRAY 2

ARRAY. Karakteristik

POINTER I. Oleh : Mike Yuliana PENS-ITS

Achmad Solichin.

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

BAB VI BAHASA C Pendahuluan

Pointer dan Array Dinamik. IF2121 / Algoritma dan Struktur Data Sem /2018

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

# SEVEN PROCUDURE & FUNCTION

Pemrograman Dasar C. Minggu 6

Transkripsi:

Fungsi, Parameter, Rekursi Daniel Riano Kaparang Book reference: Jogiyanto. Konsep Dasar Pemrograman Bahasa C. Andi Star. Yogyakarta. 2006 Kristanto Andri. Algoritma dan Pemrograman dengan C. Graha Ilmu. Yogyakarta. 2009.

Fungsi adalah suatu bagian dari program yang dimaksudkan untuk mengerjakan suatu tugas tertentu dan letaknya dipisahkan dari bagian program yang menggunakannya (Jogiyanto, 2006). Bahasa C dibentuk dari kumpulan fungsi. Fungsi banyak digunakan untuk dua alasan utama: Fungsi menjadikan program C mempunyai struktur yang jelas. Fungsi dapat digunakan untuk menghindari penulisan yang sama secara berulang Function

Secara umum fungsi terdiri dari definisi fungsi dan tubuh fungsi. Definisi fungsi berisi tipe dari fungsi, nama fungsi dan parameter jika diperlukan. Tubuh fungsi berisi statement-statement yang akan melakukan tugas yang diberikan kepada fungsi itu sendiri. Tipe_data nama_fungsi (param1, param2,,param-n){ Statement1; Statement2;. Mendefinisikan Fungsi. Statement-M;

Parameter dalam C terdiri dari parameter formal dan parameter aktual (Kristanto, 2009). Parameter formal adalah variabel yang ada pada daftar parameter dalam definisi fungsi. Parameter aktual adalah parameter yang dapat berupa variabel atau konstanta maupun ungkapan yang dipakai dalam pemanggilan fungsi. Ada 2 cara melewatkan nilai dari parameter dalam fungsi: Passing by value. Passing by reference. Parameter

#include <stdio.h> int FindMax(int n1, int n2); Void PrintMax(int m); int main(){ int i=5, j=7, k; k=findmax(i,j); PrintMax(k); return 0; int FindMax(int n1, int n2){ if(n1>n2){ return n1; else{ return n2; void PrintMax(int m){ printf( Max number is : %d\n, m); Contoh 1 Fungsi

Yang dikirimkan ke fungsi adalah nilai dari datanya, bukan alamat memori letak dari datanya. Fungsi yang menerima kiriman nilai akan menyampaikannya di alamat yang terpisah dari nilai aslinya yang digunakan oleh bagian program yang memanggil fungsi. Karena alasan ke-2 di atas, maka perubahan nilai di fungsi tidak akan merubah nilai asli di bagian program yang memanggil fungsi walaupun keduanya menggunakan nama variabel yang sama. Passing by value merupakan pengiriman searah yaitu dari bagian program yang memanggil fungsi ke fungsi yang dipanggil. Pengiriman suatu nilai dapat dilakukan untuk suatu ungkapan tidak hanya untuk sebuah variabel atau element array atau konstanta saja. Passing by value

#include <stdio.h> void PassByValue (float A,float B, char C); main() { char C='a'; float A=25, *Alamat_A; Alamat_A = &A; printf("pass BY VALUE (PROGRAM UTAMA) : \n"); printf("nilai A adalah %f di alamat %p \n", A, Alamat_A); printf("nilai A/3 adalah %f \n", A/3); printf("nilai karakter C adalah %c \n \n", C); PassByValue(A, A/3, C); void PassByValue(float A, float B, char C) { float *Alamat_A; Alamat_A = &A; A = 7; printf("pass BY VALUE (DI FUNGSI) : \n"); printf("nilai A adalah %f di alamat %p \n", A, Alamat_A); printf("nilai A/3 adalah %f \n", A/3); printf("nilai karakter C adalah %c \n \n", C); Contoh 2 Passing by value

Yang dikirimkan ke fungsi adalah alamat letak dari nilai datanya, bukan nilai dari datanya. Fungsi yang menerima kiriman alamat ini akan menggunakan alamat yang sama untuk mendapatkan nilai datanya. Karena alasan ke-2 di atas, maka perubahan nilai dari fungsi akan merubah nilai asli di bagian program yang memanggil fungsi. Passing by reference merupakan perngiriman dua arah, yaitu dari bagian program yang memanggil fungsi ke fungsi yang dipanggil dan sebaliknya. Passing by value tidak dapat dilakukan untuk suatu ungkapan, hanya untuk sebuah variabel atau elemen larik konstanta saja. Passing by reference

#include <stdio.h> void PassByRefference (float *A,float B, char *C); void main() { char C='a'; float A=25, *Alamat_A; Alamat_A = &A; printf("pass BY REFFERENCE (PROGRAM UTAMA) : \n"); printf("nilai A adalah %f di alamat %p \n", A, Alamat_A); printf("nilai A/3 adalah %f \n", A/3); printf("nilai karakter C adalah %c \n \n", C); PassByRefference(&A, A/3, &C); void PassByRefference(float *A, float B, char *C) { float *Alamat_A; Alamat_A = A; *A=7; printf("pass BY REFFERENCE (DI FUNGSI) : \n"); printf("nilai A adalah %f di alamat %p \n", *A, Alamat_A); printf("nilai B adalah %f \n", B/3); printf("nilai karakter C adalah %c \n \n", *C); Contoh 3 Passing by reference

Rekursi merupakan fungsi yang memanggil dirinya sendiri. Dalam kondisi ini akan terjadi perulangan pemanggilan fungsi dan akan berhenti ketika kondisi terpenuhi. Iterasi, proses perulangan dengan statement yang sama akan berhenti jika kondisi terpenuhi. Penggunaan rekursi dan iterasi bergantung pada kebutuhan program, karena rekursi akan mengambil memori cukup banyak. Rekursi & Iterasi

int faktorial(int n){ if(n==1) return 1; else return (n*faktorial(n-1)); Contoh rekursi

Void main(){ for (int i=1; i<5; i++){ i=i*i+1; Contoh iterasi