Rabu, 12 Maret 2014

Belajar Algoritma dan Struktur Data


Algoritma :  Urutan langkah-langkah logis dalam penyelesaian masalah yang disusun secara sistematis.

Yang diperlukan oleh Algoritma:
1. Spesifikasi input
2. Process
3. Spesifikasi Output 

Penyajian Algoritma:
1. Pseudocode
    
Contoh:
Perhatikan pseudocode berikut ini!
(1) Input x
(2) Input y
(3) While y ≠ 0 do
     (a) b = x mod y 
     (b) set x = y
     (c) set y = b
     (d) kembali ke langkah 3
(4) Output = b

Untuk lebih jelas langsung saja input x dan y nya!
Misal:
x = 114
y = 54

karena y ≠ 0
maka lakukan langkah 3:
(a) b = 114 mod 54 = 6
(b) x = 54
(c) y = 6

karena y ≠ 0
maka lakukan lagi ke langkah 3
(a) b = 54 mod 6 = 0
(b) x = 6 
(c) y = 0

Karena y = 0, maka
Output = 6   
 
Keterangan:
mod = modulo = untuk mencari sisa dari pembagian tertentu.
contoh:
3 mod 2 = 1 (3:2 = 1 sisa 1)



Contoh 2:
Tentukan FPB dari x dan y dengan menggunakan pseudocode!
Jawab:
if x < y then min:= x
   else min:= y
for i:=1 to min
    if (x mod i=0) and (y mod i=0)
then FPB := i

misal:
x = 8
y= 20

8 < 20, maka min = 8
untuk i = 1
(8 mod 1=0) dan (20 mod 1=0), maka FPB (sementara) = 1

untuk i = 2
(8 mod 2=0) dan (20 mod 2=), maka FPB (sementara) = 2

untuk i = 3
(8 mod 3≠0) dan (20 mod 3≠0), maka 3 bukan FPB

untuk i = 4
(8 mod 4=0) dan (20 mod 4=0), maka FPB = 4

untuk i = 5
(8 mod 5≠0) dan (20 mod 5=0), maka 5 bukan FPB (tidak memenuhi syarat)

untuk i = 6
(8 mod 6≠0) dan (20 mod 6=0), maka 6 bukan FPB

untuk i =7
(8 mod 7≠0) dan (20 mod 7=0), maka 7 bukan FPB 

untuk i =8
(8 mod 8=0) dan (20 mod 8≠0), maka 8 bukan FPB (tidak memenuhi syarat)

Maka FPB=4