Tuesday, October 4, 2011

Konsep Algoritma

Algoritma Variabel Pe-ubah
Adalah variabel yang nilainya BUKAN konstanta (selalu berubah – sesuai dengan kondisi Variabel terKINI)
Sintaks     : P = Q
Algoritma : P <- Q
Arti          : Bahwa Nilai P diberi harga Nilai Q
Nilai P akan SAMA DENGAN nilai Q dan Nilai Q TETAP


Contoh Soal 1:
Diketahui P=0, Q=5 dan R=10. Diberikan algoritma P=Q, Q=R, maka nilai P, Q, R sekarang ?
Jawab
Diketahui P = 0, Q = 5, R = 10
P = Q –> Pada saat ini nilai dari Variabel P akan diberi nilai dari Variabel Q (P = 5)
Q = R –> Pada saat ini nilai dari Variabel Q akan diberi nilai dari Variabel R (Q = 10)
Maka nilai P, Q dan R sekarang adalah P = 5, Q = 10 dan R = 10

Contoh Soal 2:
Diketahui Algoritma P=10, P=P+1 dan Q = P. Berapakah nilai P dan Q ?
Jawab
Algoritma:
P = 10 –> Pada saat ini nilai dari Variabel P akan diberi nilai 10
P = P + 1 –> Pada saat ini nilai dari Variabel P yang baru adalah nilai dari variabel P yang lama ditambah 1 (10 + 1 = 11)
Q = P –> Pada saat ini nilai dari variabel Q diberi nilai dari variabel P yang baru  (Q =11)

Contoh Soal 3:
Diketahui 3 varibael peubah P, Q dan R. Agar isi Q ditaruh di P, isi R ditaruh di Q dan isi P ditaruh di R,maka Algoritma yang dapat ditulis adalah ..?
Jawab
Agar isi Q ditaruh di P, algoritma yang dapat ditulis adalah (P <- Q atau P=Q)
Agar isi R ditaruh di Q, algoritma yang dapat ditulis adalah (Q <- R atau Q=R)
Agar isi P ditaruh di R, algoritma yang dapat ditulis adalah (R <- P atau R=P)

Algoritma Variabel Pertukaran
Berfungsi mempertukarkan masing-masing isi Variabel sedemikian sehingga Nilai dari tiap Variabel akan berubah/bertukar.

Contoh Soal:
Diketahui 2 peubah K = 10 dan L = 20. Buat Algoritma untuk mempertukarkan isi K dan L .. ?
Jawab
Untuk menyelesaikan algoritma pertukaran, dibutuhkan satu buah peubah (variabel) tambahan untuk menyimpan nilai dari salah satu peubah. Algoritma pertukaran untuk masalah diatas adalah (dimisalkan variabel tambahan adalah T).
T = K –> Pada algoritma ini nilai dari variabel T (variabel tambahan) akan diisi dengan nilai dari variabel K (T = 10)
K = L –> Pada algoritma ini nilai dari Variabel K akan diisi dengan variabel L (K = 20)
L = T –> Pada algoritma ini nilai dari Variabel L akan diisi dengan variabel T (L = 10)
Setelah algoritma ini dijalankan dapat dilihat bahwa algorita diatas telah mempertukarkan nilai dari variabel-variabel tersebut. Sebelumnya variabel K = 10 dan L = 20, menjadi variabel K = 20 dan L = 10


Analisa Algoritma
1.       Seorang Petani akan berpergian ke kota dengan  membawa seekor kambing, Anjing dan Rumput Yang ketiganya memliki berat yang tidak jauh berbeda, ditengah jalan petani harus menyebrangi sungai dengan menggunakan perahu dan untuk melaluinya petani tersebut tidak diperbolehkan membawa sekaligus bawaannya mengingat kapasitas kekuatan perahu tersebut, dan untuk melaluinya petani harus membawa satu persatu bawaannya . Ditanya: berapa kali petani tersebut harus melalui jembatan dengan memperhatikan bahwa kambing makan rumput, anjing makan kambing ?
2.       Bagaimana caranya untuk menyebrangkan tiga orang rahib yang sedang dikejar oleh Tiga orang kanibal ke sisi pulau yang ada diseberangnya
Dengan catatan :
Bila misionarisnya Lebih sedikit dari dari kanibal, maka misionaris tersebut akan dimakannya.


Jawaban:
1.       Algoritmanya
a.       petani ke pulau B, membawa kambing
b.      petani ke pulau A,
c.       petani  kepulau B, membawa rumput
d.      petani kepulau A, membawa kambing
e.      petani  kepulau B, membawa anjing dan meninggalkan kambing
f.        petani kepulau A
g.       petani kepulau B, membawa kambing

2.       Algoritmanya adalah :
1.       Dari Pulau A, 2 orang kanibal naik perahu dan sebrangkan
2.       Dipulau B, 1 orang kanibal ditempatkan di pulau B
3.       1 kanibal balik menuju pulau A dan turunkan
4.       Dari Pulau A, 2 orang kanibal naik perahu dan sebrangkan
5.       Dipulau B, 1 orang kanibal ditempatkan di pulau B
6.       1 kanibal balik menuju pulau A dan turunkan
7.       Dari pulau A, 2 orang rahib naik perahu dan sebrangkan
8.       Dipulau B, 1 orang rahib ditempatkan di pulau B
9.       1 orang rahib dan 1 orang kanibal balik menuju pulau A  dan turunkan kanibal dari perahu
10.   Dipulau A, 2 orang rahib naik perahu dan sebrangkan.
11.   Dipulau B turunkan 2 orang rahib.
12.   Selesai.

No
Pulau B
Perahu
Pulau A
Arah Perahu
0.
Kosong
Kosong
3 kanibal
3 Rahib

1

2 kanibal
1 kanibal
3 rahib
<-
2
1 kanibal
1 kanibal
1 kanibal
3 rahib
->
3
1 kanibal
2 kanibal
3 rahib
<-
4
2 kanibal
1 kanibal
3 rahib
->
5
2 kanibal
2 rahib
1 rahib
1 kanibal
<-
6
1 kanibal
1 rahib
1 kanibal
1 rahib
1 rahib
1 kanibal
->
7
1 kanibal
1 rahib
2 rahib
2 kanibal
<-
8
3 rahib
1 kanibal
2 kanibal
->
9
3 rahib

3 kanibal

Comments
0 Comments

0 comments:

Post a Comment