Anda di halaman 1dari 5

15/03/2010

Struktur Dasar Algoritma

SEQUENCE - RUNTUNAN
STRUKTUR DASAR ALGORITMA (I)
Algoritma Pemrograman SELECTION - PEMILIHAN

REPETITION - PENGULANGAN
Agus Sumaryanto, S.Kom
mas.anto72@gmail.com

http://learning.mas-anto.com 1 http://learning.mas-anto.com 2

SEQUENCE - RUNTUNAN Runtunan (lanj.)


Algoritma merupakan runtunan aksi
1. Tiap aksi dikerjakan satu per satu
2. Tiap aksi dilaksanakan tepat sekali, tidak ada aksi
A1 A2 A3 A4
yang diulang
3. Urutan aksi yang dilakukan pemroses sama dengan
urutan aksi sebagaimana yang ada dalam algoritma •Misalkan A1 adalah aksi pertama, A2 akan dibaca setelah A1, A3 akan dibaca setelah
•A2 dst.
4. Akhir dari aksi terakhir merupakan akhir algoritma •A2 merupakan aksi awal sebelum A3, A3 awal aksi awal sebelum A4
•Proses akan dikerjakan secara beruntun sampai aksi terakhir selama tidak ada
kondisi lain.

http://learning.mas-anto.com 3 http://learning.mas-anto.com 4

1
15/03/2010

Menukar Dua Buah Nilai Latihan


Algoritma Menukar_Dua_Buah_Nilai Algoritma Menukar_Dua_Buah_Nilai 1. Buatlah Algoritma untuk menghitung Luas
Deklarasi Deklarasi
A, B, C : integer A, B, C : integer Segitiga.
Algoritma : Algoritma :
A=10 A=10
2. Buatlah Algoritma untuk menghitung
B=5 B=5 penjualan sebuah barang. Masukkannya
C=A A=B
A=B C=A
adalah nama barang, jumlah, harga. Tentukan
B=C B=C total penjualan jika dipotong diskon sebesar
Read(A,B) Read(A,B)
15% !.
Perhatikan dua buah algoritma diatas. Bandingkan keluarannya setelah urutan diubah

http://learning.mas-anto.com 5 http://learning.mas-anto.com 6

Algoritma Hitung Selisih Waktu Bicara Telepon Algoritma Hitung Selisih Waktu Bicara Telepon
(lanj.)
A0
A1
Algoritma Selisih_Waktu_Bicara
Algoritma Selisih_Waktu_Bicara
1. Catat waktu awal bicara
1. Misal awal bicara T1=J1:M1:D1
2. Catat waktu akhir bicara
2. Misal akhir bicara T2=J2:M2:D2
3. Hitung selisih waktu bicara
3. Selisih waktu bicara T3 (J3:M3:D3) = T2 – T1
4. Cetak selisih waktu bicara
4. Cetak T3
Algoritma diatas masih global, untuk menghasilkan algoritma detil maka harus
diesktrak lagi. Untuk mendapatkan hasil dengan presisi tinggi maka perlu disamakan
satuannya ke satuan terkecil yaitu detik.

http://learning.mas-anto.com 7 http://learning.mas-anto.com 8

2
15/03/2010

Algoritma Hitung Selisih Waktu Bicara Telepon SELECTION - PEMILIHAN


(lanj.)
A2 • Sebuah proses tidak selalu berjalan secara
Algoritma Selisih_Waktu_Bicara runtun, tapi kadang kala sebuah proses harus
1. T1=(J1 x 3600) + (M1 x 60) + D1
memenuhi kondisi tertentu.
2. T2=(J2 x 3600) + (M2 x 60)+ D2 Jika diperhatikan pada Algoritma B
(2), akan menghasilkan selisih
3. T3 = T2 – T1 dalam satuan detik maka pada
1. J3 = T3 DIV 3600 Algoritma (3) harus dilakukan
proses mengembalikan ke satuan A C
2. M3 = (T3 MOD 3600) DIV 60
jam, menit dan detik.
3. D3 = (T3 MOD 3600) MOD 60
4. Cetak T3 = J3:M3:D3
D
Kondisi
Relasional

http://learning.mas-anto.com 9 http://learning.mas-anto.com 10

Struktur Pemilihan Bentuk If – Then – Else (1)


Ada dua pernyataan pemilihan : If dengan satu pilihan :
If <kondisi> then
1. Pernyataan IF – Then – Else <aksi> <aksi> akan dilakukan jika <kondisi>
bernilai benar
2. Pernyataan Depend – On endif
If dengan 2 pilihan :
If <kondisi> then
Sebuah pemilihan adalah percabangan proses, <aksi1>
dimana proses akan berlanjut ke sebuah aksi Else
<aksi1> akan dilakukan jika <kondisi>
bernilai benar, jika <kondisi> salah maka
tergantung dari kondisi yang ada. <aksi2> <aksi2> dilakukan.

endif

http://learning.mas-anto.com 11 http://learning.mas-anto.com 12

3
15/03/2010

Bentuk If – Then – Else (2) Contoh If – Then - Else


If dengan 3 pilihan : Algoritma Kondisi_If b akan ditambah 1 jika a lebih
Deklarasi besar/sama dengan 10.
If <kondisi1> then b akan ditambah 3 jika a kurang
<aksi1> a, b, c : integer; dari 5, selain itu b akan
Algoritma dikurangi 1
Else If <kondisi2> then <aksi1> akan dilakukan jika <kondisi1> benar
Jika <kondisi1> salah, periksa <kondisi2>,
Read(a)
<aksi2> Jika <kondisi2> benar maka <aksi2> dilakukan, If a>=10 then
Else Jika <kondisi2> salah otomatis <aksi3> b b+1
dilakukan
<aksi3> Else If a<5 then
b b-1
Endif
Else
Endif
b b+3

http://learning.mas-anto.com 13 http://learning.mas-anto.com 14

Bentuk Depend – On (1) Bentuk Depend – On (2)


• Logika Depend – On sama dengan pernyataan Bentuk umum :
If – Then – Else Depend on <variabel>
kondisi1 : aksi1
• Depend – On lebih cocok untuk pilihan (aksi) kondisi2 : aksi2
banyak kondisi1 : aksi3
• Penulisannya lebih simpel dari pada ..
pernyataan If – Then – Else ..
kondisiN : aksiN
• Biasanya digunakan untuk mengatur eksekusi
Enddepend
dalam sebuah program bermenu

http://learning.mas-anto.com 15 http://learning.mas-anto.com 16

4
15/03/2010

Contoh Depend - On Latihan


Algoritma Hari 1. Ubahlah algoritma hari dari Depend – On ke bentuk baru
Deklarasi menggunakan pernyataan If-Then-Else !.
hari : integer
2. Rancanglah algoritma untuk menentukan seorang
Algoritma
Read(hari)
mahasiswa dikatakan LULUS, HER dan GAGAL berdasarkan
Depend on hari nilai yang dimasukkan !.
1 : write(‘Senin’) 3. Sebuah toko dalam masa promosi memberikan diskon
2 : write(‘Selasa’) kepada pembeli sebesar 10%, 15% dan 20%. Dalam
3 : write(‘Rabu’) menentukan diskon, berdasarkan jumlah beli. Jumlah
4 : write(‘Kamis’) pembelian lebih dari 15 maka diskon sebesar 20%. Jika
5 : write(‘Jumat’)
jumlah pembelian kurang dari 5 maka diskon sebesar 10%,
6 : write(‘Sabtu’)
selain itu diskon sebesar 15%. Hitung dan cetak berapa harus
7 : write(‘Sabtu’)
Enddepend
dibayar oleh pembeli setelah diberikan diskon.
http://learning.mas-anto.com 17 http://learning.mas-anto.com 18

Anda mungkin juga menyukai