Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Kuliah 1-2 (Algoritma) Pseudocode Prosedure dan Fungsi

Presentasi serupa


Presentasi berjudul: "Kuliah 1-2 (Algoritma) Pseudocode Prosedure dan Fungsi"— Transcript presentasi:

1 Kuliah 1-2 (Algoritma) Pseudocode Prosedure dan Fungsi
Call by value vs call by Refrence Membaca algoritma Latihan

2 Psudocode Fungsi dan Prosedure Notasi Perbedaan Fungsi dan Prosedure
Call By Value vs Call by Refrence

3 Analysis of Algorithms
Fungsi vs Prosedure Fungsi Parameter inpur min 1 dan output mak 1 Procedure Parameter sembarang Analysis of Algorithms

4 Analysis of Algorithms
Fungsi Pseudocode namaFungsi(daftar par) : typeHasil variabel local algoritma body return nilai Analysis of Algorithms

5 Analysis of Algorithms
Contoh fungsi f(X,Y) = X^2+Y/2 Fucntion f(x,y) Algoritma Return x^2 + Y/2 Analysis of Algorithms

6 Analysis of Algorithms
Fungsi Rekursif Fungsi yang memanggil dirinya sendiri Contoh : fak(5) = 5 * fak(4) fak(4) = 4 * fak(3) fak(3) = 3 * fak(2) fak(2) = 2 * fak(1) fak(1) = 1 > fak(n) = n*fak(n-1) If n = 1 or n = 0 then fak(n) = 1 Beri contoh untuk bilangan fibonacci dan uraian proses pengerjaannya step by step Analysis of Algorithms

7 Analysis of Algorithms
Contoh 2 1,2,3,5,8,13,21,34,…. F(n) = ? Analysis of Algorithms

8 Analysis of Algorithms
Pseodocode Prosedure NamaProsedure (daftar parameter in/out) Variabel lokal Algoritma Bodi Daftar parameter Call by value Call by refrence Analysis of Algorithms

9 Analysis of Algorithms
Contoh input data array Cetak data array Cari posisi suatu data di array Cari pos-pos data suatu array Cari nilai terbesar di array Copy array dari pos I sebanyak k item Ganti item array yang nilainya genap dengan rumus A[i] = A[i-1]*3 Analysis of Algorithms

10 Langkah-langkah solusi
Buat Rancangan Black Box (IPO) Untuk mentukan fungsi atau prosedure Buat flowchart Buat pseudocode Analysis of Algorithms

11 Analysis of Algorithms
Contoh Buat algoritma fungsi/prosedure untuk mencari posisi data tertentu di suatu array A. Analysis of Algorithms

12 Analysis of Algorithms
1. BB Bentuk yang paling sesuai adalah fungsi A : Larik findPostDt posisi : int dtCari : tpDt Analysis of Algorithms

13 2. Flowchart dan Pseodocode
Function FindPosDt(A : Larik, dtCari : tpDt) : int Var local i : integer ketemu : boolean pos : integer Algoritma i  0 Ketemu  false Pos  -1 While (not ketemu and I < N) do If (dtCari = A[i]) then Ketermu  true Pos  I End if i  i + 1 End while Analysis of Algorithms

14 Latihan : kerjakan dengan cara yang sama untuk
Cari posisi suatu data di array Cari posisi-posisi data suatu array Cari nilai terbesar di array Copy array dari pos I sebanyak k item Ganti item array yang nilainya genap dengan rumus A[i] = A[i-1]*3 Tukar isi dari array A dan B dengan ketentuan sebagai berikut : Jika A[i] genap maka A[i] = B[i]*A[i] Jika B[i] ganjil maka B[i] = B[i-1]-A[i] Analysis of Algorithms

15 Analysis of Algorithms
Algoritma & Struktur Data ASD C algstrdttif-c Analysis of Algorithms

16 Analysis of Algorithms
Tugas 1 kelas C Dikumpulkan Selasa 5 Maret 2013 (JANGAN LUPA SERTAKAN NO KELOMPOK DENGAN FORMAT SBB: K01_C_T1 Susun 1.BB, 2. Flowchart, 3.Pseudocode dan Program berbasis OOP untuk ADT Matrik meliputi : hitungRata-rata perbaris hitungRata-rata perkolom Penjumlahan 2 buat matrik Perkalian 2 buah matrik Tranpos Matrik Standart deviasi dari suatu matrik (rumus cari di buku statistik) Kesamaan dua buah matrik Ambil baris yang rata-ratanya terbesar Analysis of Algorithms

17 Analysis of Algorithms
Tugas 1 kelas D Dikumpulkan Senin 4 Maret 2013 (JANGAN LUPA SERTAKAN NO KELOMPOK DENGAN FORMAT SBB: K01_D_T1 Susun 1.BB, 2. Flowchart, 3.Pseudocode dan Program berbasis OOP untuk ADT Matrik meliputi : hitungRata-rata perbaris hitungRata-rata perkolom Penjumlahan 2 buat matrik Perkalian 2 buah matrik Tranpos Matrik Standart deviasi dari suatu matrik (rumus cari di buku statistik) Kesamaan dua buah matrik Analysis of Algorithms

18 Analysis of Algorithms
Tugas 1 E Dikumpulkan Selasa 5 Maret 2013 (JANGAN LUPA SERTAKAN NO KELOMPOK DENGAN FORMAT SBB: K01_E_T1 Susun 1.BB, 2. Flowchart, 3.Pseudocode dan 4.Program berbasis OOP untuk ADT Matrik meliputi : cetakMatrik hitungRata-rata perbaris hitungRata-rata perkolom Penjumlahan 2 buat matrik Perkalian 2 buah matrik Tranpos Matrik Standart deviasi dari suatu matrik (rumus cari di buku statistik) Kesamaan dua buah matrik Dikumpulkan HC (A4,Font CourierNew 9 untuk coding) Analysis of Algorithms

19 Analysis of Algorithms
Latihan : susun algoritma prosedure atau fungsi dari persamaan berikut : Analysis of Algorithms

20 Analysis of Algorithms
Membaca Algoritma Misalkan diberikan dua buah variabel x dan y, dan variable hasil yang nilai awalnya 0. Lakukan proses berikut selama nilai x lebih besar 0. 1. jika nilai x ganjil maka hasil = hasil + y 2. nilai x selanjutnya adalah nilai x sebelumnya dibagi dua, bila ada hasil pecahan, maka pecahannya dibuang (contoh bilai nilai x sebelumnya 1 maka nilai selanjutnya 0) 3. nilai y selanjutnya adalah nilai y sebelumnya dikali 2. Analysis of Algorithms

21 Analysis of Algorithms
X = {3,2,1,4} Jika diberikan potorngan pseudocode berikut : Function yyy(a : integer) : integer; Begin If (a >= 0) then yyy  a else yyy  -a End Function zzz : integer; Var tmp1, tmp2, j : integer; Begin Tmp1  yyy(x[0]-x[1]); For j  0 to panjangX-1 do begin Tmp2  yyy(x[j]-x[j+1]) If (tmp2 > tmp1) then tmp1  tmp2 End Zzz  tmp1 Analysis of Algorithms

22 Analysis of Algorithms
X = {45,23,12,90} X = {45,23,12,90,2,7,9,11,10,100,5,17,11,32,56} Procedure Kocok(I : integer) Var j : integer; Begin If(I >= 0) and (I < 15) then begin For j I + 1 to 14 do If (x[j] < x[I]) then Zaff(x[j],x[I]) Kocok(I+1) Write(x[I], “ “) End Kocok(10) : ? Fungsi Zaff adalah fungsi untuk menukar dua buah bilangan A dan B dengan ketentuan sebagai berikut : Jika A < B tidak terjadi penukaran Jika A > B maka tukar isi A dengan isi B Analysis of Algorithms

23 Analysis of Algorithms
Berapakah nilai dari apakahIni(10) ? X = {3,2,6,7,1} X = {45,23,12,90,2,7,9,11,10,100,5,17,11,32,56} Function apakaIni(I : integer) : integer Var temp : integer Algoritma If (i < 15) then Tmp  x[i] apakahIni  tmp X[i]  (x[i] + apakahIni(i+1))/2 Output (x[i]) Else apakahIni  0 Analysis of Algorithms

24 Analysis of Algorithms
Ada pertanyaan ??? Analysis of Algorithms


Download ppt "Kuliah 1-2 (Algoritma) Pseudocode Prosedure dan Fungsi"

Presentasi serupa


Iklan oleh Google