Sesi/Perkuliahan ke: VII

dokumen-dokumen yang mirip
Dasar Komputer & Pemrograman 2A

PROCEDURE DAN FUNCTION

menunjukkan tipe hasil dari fungsi. sqr, succ dan sebagainya. buat sendiri.

Function. Pertemuan 7 Jurusan Sistem Informasi Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Gunadarma 2015

FUNGSI. Blok fungsi juga diawali dengan kata cadangan Begin dan di akhiri dengan kata cadangan End dan titik koma.

Sesi/Perkuliahan ke: VI Tujuan Instruksional Khusus : 4. Pokok Bahasan : Deskripsi singkat : Referensi :

Sesi/Perkuliahan ke: I

Pokok Bahasan : Struktur Kontrol

PROCEDURE DAN FUNCTION PROCEDURE. Parameter dalam Prosedur: C/: PROGRAM CONTOH_2; VAR p,l,t,vol,panj : real;

Sesi/Perkuliahan ke: V

SATUAN ACARA PERKULIAHAN (SAP) AKADEMI MANAJEMEN INFORMATIKA DAN KOMPUTER (AMIK) LEMBAH DEMPO

Sesi/Perkuliahan ke: II

SATUAN ACARA PERKULIAHAN MATA KULIAH PEMROGRAMAN PASCAL * (TK) KODE / SKS: KK /2 SKS

BAB I TUJUAN DAN LANDASAN TEORI

KONSEP DASAR BAHASA PASCAL

Sesi/Perkuliahan ke: IX

Struktur Data. Belajar Struktur Data Menggunakan Pascal Pertemuan-1

MODUL 1. Struktur Bahasa PASCAL secara umum

Pengenalan Pascal. Sejarah Singkat Pascal

Dasar Komputer & Pemrogaman 2A

Algoritma Pemrograman

MATERI 5 Procedure. Pendeklarasian suatu procedure pada program : PROGRAM Judul_Program; PROCEDURE Nama_Prosedur; BEGIN. {Statemen prosedur} END.

KONSEP DASAR BAHASA PASCAL

Memulai Pemrograman Pascal dengan Delphi Console 1. Buka aplikasi delphi 2. Pilih File New Other Console Application

KONSEP DASAR BAHASA PASCAL

OPERASI STRING. Delete(var s:string;index:integer;count:integer);

Pertemuan 3 Prosedur dan Fungsi

dengan menyebutkan judul prosedurnya. dalam bentuk prosedur-prosedur. diperlukan.

AP2a (Pascal) Akuntansi Kelas 1 Semester 2. Hana Pertiwi S.T

P A S C A L D A S A R

KONSEP DASAR BAHASA PASCAL. Pengertian SEJARAH SINGKAT BAHASA PASCAL STRUKTUR DAN KOMPONEN DASAR PROGRAM PASCAL.

Subprogram. Definisi

Statemen-Statemen pada Pemrograman Pascal Reserved Word

SATUAN ACARA PERKULIAHAN (SAP) Mata Kuliah : Struktur Data Kode : TIS3213 Semester : III Waktu : 1 x 3 x 50 Menit Pertemuan : 3

Algoritma Pemrograman

Rekursif. Rekursif adalah salah satu metode dalam dunia matematika dimana definisi sebuah fungsi mengandung fungsi itu sendiri.

Algoritma Pemrograman

BAB V S U B R U T I N STMIK AMIKOM PURWOKERTO

Modul 1 Pengantar Bahasa Pascal

Teori Algoritma. Struktur Algoritma

Algoritma Pemrograman

Bab 1 Pengenalan Pascal 1 BAB I PENGENALAN PASCAL, TIPE-TIPE DATA PASCAL DAN STATEMEN DASAR PADA PASCAL TUJUAN PRAKTIKUM TEORI PENUNJANG

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

Tabel 1. Jenis data integer Ukuran memori (dalam byte)

Pertemuan 4 KONSEP TIPE DATA

Universitas gunadarma. pascal. Bab 4- bab 10. Hana Pertiwi S.T

Algoritma Pemrograman

Nah, sekarang anda sudah masuk ke bab statement pemrograman.selamat mencoba

Algoritma Pemrograman

Satuan Acara Perkuliahan (SAP) UNIVERSITAS GUNADARMA

Pertemuan Ke-2 (Teks Algoritma) Rahmady Liyantanto. S1 Teknik Informatika-Unijoyo

Materi ke-4 Praktikum Algoritma dan Pemrograman kelas Matematika PEMROGRAMAN MODULAR

Pertemuan 4 ELEMEN-ELEMEN BAHASA PEMROGRAMAN

Modul Algoritma dan Pemograman Rismira Andriyani, S.Kom i

MATERI 4 PENYELEKSIAN KONDISI

& PEMROGRAMAN. Alex De Kweldju, S.Kom D3 Teknik Komputer Fakultas Teknik Universitas Negeri Papua

Algoritma Pemrograman

Pembahasan X = Rp Tarif Pajak = 5% 8% Harga televisi + pajak 5% = % = % = % =

Algoritma Pemrograman

Algoritma Pemrograman

STRUKTUR KENDALI. Memanfaatkan struktur kendali untuk kasus komputasi

Algoritma Pemrograman

I. KATA PENGANTAR. Modul Algoritma Pemrograman. Modul Ke-3 - Hal 1

Chapter 3.2 : Tipe, Nama dan Nilai

Tujuan Pembelajaran : Mahasiswa mampu menjelaskan teknik pemrograman menggunakan Modul.

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

I. KATA PENGANTAR. Modul Algoritma Pemrograman. Modul Ke-4 - Hal 1

ALGORITHM. 3 Rekursif Algorithm. Dahlia Widhyaestoeti, S.Kom dahlia74march.wordpress.com

Teori Algoritma TIPE DATA

Algoritma Pemrograman

TIPE DATA, VARIABLE, dan OPERATOR DELPHI

Algoritma Pemrograman

Algoritma Pemrograman

VARIABEL, TIPE DATA, KONSTANTA, OPERATOR DAN EKSPRESI. Pemrograman Dasar Kelas X Semester 2

Variabel dan Tipe Data Kusrini 1, Heri Sismoro 2

SATUAN ACARA PERKULIAHAN (SAP) Mata Kuliah : Struktur Data Kode : TIS3213 Semester : III Waktu : 2 x 3 x 50 Menit Pertemuan : 1 & 2

PROSEDUR DAN FUNCTION

Tipe Data dan Operator dalam Pemrograman

Algoritma Pemrograman

Algoritma dan Struktur Data

Sesi/Perkuliahan ke: 1

Pengantar dalam Bahasa Pemrograman Turbo Pascal

FUNGSI. setiap elemen di dalam himpunan A mempunyai pasangan tepat satu elemen di himpunan B.

.::BAB II.::MENGENAL PASCAL

Bagian 2 Statemen-Statemen pada Pemrograman Pascal

PROCEDURE DAN FUNCTION PADA ALGORITMA

LEMBAR PENGESAHAN JUDUL: PERCABANGAN OLEH :

Bab 1 Algoritma dan Pemrograman Tersruktur

Algoritma Pemrograman

PEMANFAAT FUNGSI SQR DAN SQRT UNTUK PERHITUNGAN BESARAN VEKTOR DAN HAMBATAN AC. Ulul Ilmi *)

Struktur Data. Pertemuan 2

Algoritma Pemrograman

Pemrograman Dasar Pascal

SUB PROGRAM : PROSEDUR & FUNGSI. Konsep Pemrograman

Nama Mata Kuliah. Program Komputer & Pengantar Tek. Informasi & Komunikasi

Algoritma Pemrograman

Catatan Kuliah STRUKTUR DATA BAB III REKURSIF

Algoritma Pemrograman I KONSEP DASAR

SATUAN ACARA PERKULIAHAN (SAP)

Algoritma Pemrograman

Transkripsi:

Sesi/Perkuliahan ke: VII Tujuan Instruksional Khusus : 1. Mahasiswa dapat menjelaskan pembentukan fungsi tanpa parameter. 2. Mahasiswa dapat menjelaskan mengenai pengiriman parameter dalam fungsi. 3. Mahasiswa dapat menjelaskan cara pemanggilan pada procedure tersarang. 4. Mahasiswa dapat menjelaskan cara fungsi memanggil dirinya sendiri 5. Mahasiswa dapat membuat contoh program sederhana dengan menggunakan fungsi. Pokok Bahasan : Fungsi Deskripsi singkat : Dalam pertemuan ini akan mempelajari tentang fungsi tanpa parameter, parameter dalam fungsi, fungsi Standart aritmatika, fungsi tersarang, fungsi Memanggil dirinya sendiri. Referensi : 1. Anonim, Algoritma & Pemrograman II, Penerbit Gunadarma, Jakarta, 1990 2. Bryon, Goffried, Programming with PASCAL, Schaum Series, New York, 1986 3. Prather, Ronald E., Problem Solving Principle : Programming with Pascal, Prentice Hall, New Jersey, 1982 4. Dumairy, Matematika Terapan untuk Bisnis & Ekonomi Press (BPFE Yogyakarta) 5. Yogianto H.M, Turbo Pascal 5.0 Penerbit Andi Offset, Yogyakarta. 6. Ediman Lukito, Belajar Sendiri Pemrograman dengan Turbo Pascal 7.0 7. Ir. P. Insap Santosa, Turbo Pascal versi 5.0 dan 5.5, Elexmedia Komputindo Halaman : 1

FUNCTION Blok fungsi hampir sama dengan blok prosedur, hanya fungsi harus dideklarasikan dengan tipenya atau jenis hasilnya. Tipe deklarasi ini menunjukkan tipe hasil dari fungsi. Pada bahasa Pascal dikenal beberapa fungsi, misalkan : abs, pred, sqrt, sqr, succ dan sebagainya. Fungsi-fungsi tersebut biasanya dikenal dengan Built in Function. Sedangkan function yang akan bicarakan disini adalah fungsi yang kita buat sendiri. Berbeda dengan procedure, function merupakan modul program yang menghasilkan suatu kuantitas. Hal ini dapat dilihat dari bentuk header-nya yang menyebutkan jenis data dari kuantitas yang dihasilkan. Secara umum bentuk header suatu function adalah : Atau FUNCTION nama : jenis hasil; FUNCTION nama (formal parameter : jenis ) : jenis_hasil; 1. Akan dibuat suatu fungsi dengan nama MAX yang dapat menentukan integer terbesar di antara dua integer. Function MAX (x,y : integer) : integer; If x < y then MAX := y ; Else MAX := x; Halaman : 2

Selanjutnya kita dapat menggunakan fungsi di atas dalam suatu program, misalnya dengan menyatakan sebagai berikut : P := MAX(a,b); Z := MAX(a+b,a*b); Q := MAX(MAX(a,b),c); dsb. 2. Function LOG (x : real) : real; LOG := ln (x) / ln (10.0); 3. Function POWER (x,y : real) : real; POWER := exp (y * ln (X)) a b = POWER (a,b) b a = POWER (b,a) (p + q) r/s = POWER (p + q, r/s).. dll Halaman : 3

Function Hitung(Var A,B : integer): integer; Hitung := A + B; Var X,Y : integer; Write( Nilai X? ); Readln(X); Write( Nilai Y? ); Readln(Y); Writeln; Writeln(X, +,Y, =,Hitung(X,Y)); Hasilnya : Nilai X? 2 Nilai Y? 3 2 + 3 = 5 Perbedaan fungsi dengan prosedur adalah : 1. Pada fungsi, nilai yang dikirimkan balik terdapat pada nama fungsinya (kalau pada prosedur pada parameter yang dikirimkan secara acuan). Pada contoh, nama fungsi tersebut adalah Hitung dan nilai yang dikirim balik berada pada nama fungsi tersebut. Sehingga nama fungsi ini harus digunakan untuk menampung hasil yang akan dikirimkan dari fungsi, sebagai berikut : Hitung := A + B; Nama fungsi yang berisi nilai yang akan dikirimkan Halaman : 4

2. Karena nilai balik berada di nama fungsi tersebut, maka fungsi tersebut dapat langsung digunakan untuk dicetak hasilnya, sebagai berikut : Writeln(X, +,Y, =,Hitung(X,Y)); Nama fungsi yang langsung digunakan untuk ditampilkan hasilnya. Atau nilai fungsi tersebut dapat juga langsung dipindahkan ke pengenal variabel yang lainnya, sebagai berikut : Hasil := Hitung(X,Y); Writeln(X, +,Y, +,Hasil); Sedang pada prosedur, nama prosedur tersebut tidak dapat digunakan langsung, yang dapat langsung digunakan adalah parameternya yang mengandung nilai balik. REKURSIF Suatu fungsi atau prosedur dalam bahasa Pascal dapat bersifat rekursif. Artinya, fungsi atau prosedur tersebut dapat memanggil dirinya sendiri. Berikut ini sebuah contoh fungsi dan prosedur yang rekursif. 1. function faktorial (nilai : integer) : integer; begin if nilai <= 0 then faktorial := 1; else faktorial := nilai * faktorial (nilai-1) end; Var N : integer; Halaman : 5

Write( Berapa faktorial? ); Readln(N); Writeln(N, faktorial =,faktorial(n):9:0); faktorial (4) = 4 * faktorial (3) 3 * faktorial (2) 2 * faktorial (1) 1 * faktorial (0) 1 = 4 * 3 * 2 * 1 * 1 = 24 2. Bilangan Fibonanci: F (0) = 0 F (1) = 1 F (n) = F ( n-1 ) + F (n-2); untuk n >1 Function fibonacci ( n : integer ) : integer; If n = 0 then fibonacci := 0 Else If n := 1 then fibonacci := 1 Else fibonacci := fibonacci (n-1) + fibonacci (n-2); Halaman : 6

3. Procedure reverse ( num : integer ); If num < 10 then write(num) Else begin Write(num mod 10); Reverse(num div 10); Fungsi Standar 1. Fungsi standar aritmatika Fungsi standar ABS Bentuk umum : ABS(x); Digunakan untuk memutlakkan suatu nilai yang ditunjukkan oleh argumen x. X:=-2.3; Write( Nilai X =,X, Nilai mutlaknya =,Abs(X):3:1); Fungsi standar EXP Bentuk Umum : EXP(x:):real; Digunakan untuk menghitung nilai pangkat dari bilangan e yaitu sebesar e x. Hasilnya berupa nilai real. Halaman : 7

Fungsi standar LN Bentuk umum : LN(x):real; Digunakan untuk menghitung nilai logaritma alam (natural logarithm) dari nilai x. Hasilnya berupa nilai real. Fungsi standar INT Bentuk umum : INT(x:real):real; Digunakan untuk menghasilkan nilai integer dari x. hasil dari fungsi adalah tipe real dengan nilai yang berupa pembulatan ke bawah (nilai pecahan dibuang) dari nilai x. X:=9.99; Write( Nilai yang akan dibulatkan =,X); Writeln( Nilai pembulatannya =,Int(X):3:2); Hasil : Nilai yang akan dibulatkan = 9.99 Nilai pembulatannya = 9.00 Fungsi standar FRAC Bentuk umum : FRAC(x:):real; Digunakan untuk mendapatkan nilai pecahan dari argumen x. Argumen x dapat bernilai real maupun integer dan hasil dari fungsi adalah real. X:=9.99; Write( Nilai X =,X, Nilai pecahannya =,Frac(X):4:3); Hasilnya : Nilai X = 9.99 Nilai pecahannya = 0.990 Halaman : 8

Fungsi standar SQR Bentuk umum : SQR(x); Digunakan untuk menghitung nilai pangkat kuadrat dari argumen x. X :=2; Write( Nilai X =,X, Nilai kuadratnya =,sqr(x)); Hasilnya : Nilai X = 2 Nilai kuadratnya = 4 Fungsi standar SQRT Bentuk umum : SQRT(x) : real; Digunakan untuk menghitung nilai akar dari argumen x, hasilnya berupa real. Fungsi standar PI, SIN, COS, ARCTAN 2. Fungsi Standar Transfer Digunakan untuk merubah suatu nilai ke bentuk nilai lain. Fungsi standar CHR Bentuk umum : CHR(x:byte):char; Digunakan untuk merubah nilai dari byte x ke bentuk karakter yang sesuai dengan kode ASCII. X := 66; Write( Nilai X =,x, Nilai karakternya =,CHR(X)); Hasilnya : Nilai X = 66 Nilai karakternya = B Halaman : 9

Fungsi standar ORD Bentuk umum : ORD(x):longint; Digunakan untuk merubah nilai x ke bentuk nilai longint yang sesuai dengan kode ASCII, merupakan kebalikan dari fungsi CHR. Fungsi standar ROUND Bentuk umum : ROUND(x:real):longint; Digunakan untuk membulatkan nilai dari real x ke nilai longint yang terdekat. Bila nilai pecahan sama dengan atau lebih besar dari 0.5 akan dibulatkan ke atas, sedang kalau lebih kecil dari 0.5 akan dibulatkan ke bawah. Write( 10 dibagi 3 hasil pembulatan terdekat,round(10/3)); Writeln( 20 dibagi 3 hasil pembulatan terdekat adalah,round(20/3); Hasilnya : 10 dibagi 3 hasil pembulatan terdekat adalah 3 20 dibagi 3 hasil pembulatan terdekat adalah 7 Fungsi standar TRUNC Bentuk umum : TRUNC(x:real):longint; Digunakan untuk membulatkan nilai dari real x ke nilai longint terkecil. Atau dengan kata lain membulatkan ke bawah. Write( 10 dibagi 3 hasil pembulatan terdekat,trunc(10/3)); Writeln( 20 dibagi 3 hasil pembulatan terdekat adalah,trunc(20/3); Hasilnya : 10 dibagi 3 hasil pembulatan terdekat adalah 3 dibagi 3 hasil pembulatan terdekat adalah 6 Halaman : 10

3. Fungsi Standar Lainnya Fungsi standar yang tidak termasuk dalam kelompok pembagian di atas : Fungsi standar Hi, Lo, Swap Fungsi standar Random Bentuk umum : Random [(range :word)]; Digunakan untuk menghasilkan angka random berkisar dari nilai lebih besar atau sama dengan nol dan lebih kecil dari satu. Bila range tidak disebutkan, hasil dari fungsi ini adalah real, bila range disebutkan, hasilnya adalah word. Fungsi standar SizeOf Bentuk umum : SizeOf(x):word; Digunakan untuk menunjukkan besarnya byte yang digunakan oleh suatu variabel x, hasilnya berupa nilai word. Fungsi standar UPCASE Bentuk umum : UpCase(Ch:char):char; Digunakan untuk merubah argumen suatu karakter yang ditunjukkan oleh Ch menjadi bentuk karakter huruf besar (upper case). Halaman : 11