Struktur Dasar Algoritma dan Runtunan
RUNTUNAN (1/4) Algoritma merupakan runtunan (sequence) satu atau lebih instruksi, yang berarti bahwa : Tiap instruksi dikerjakan satu per satu Tiap instruksi dilaksanakan satu kali Urutan instruksi yang dilaksanakan pemroses sama dengan urutan aksi sebagaimana tertulis di dalam Algoritma Akhir dari instruksi terakhir merupakan akhir algoritma
RUNTUNAN (2/4) Runtunan yang terdiri dari 5 buah instruksi. Aksi 1 Runtunan yang terdiri dari 5 buah instruksi. Tiap instruksi dikerjakan satu per satu secara berurutan, sesuai dengan urutannya di dalam algoritma Aksi 2 Aksi 3 Aksi 4 Aksi 5
RUNTUNAN (3/4) Urutan di dalam algoritma sangat penting. Urutan instruksi yang berbeda akan menghasilkan hasil yang berbeda pula
RUNTUNAN (4/4) Contoh : A 10 A 10 A 2 * A B A B A A 2 * A write (B) write (B) =20 =10
Contoh Kasus 1 Buatlah Algoritma lengkap untuk menghitung Volume Tabung dan Luas Permukaan Tabung Inputan berupa nilai jari-jari tabung dan tinggi tabung Dimana Rumus: Volume = 3.14 * r * r * t Luas Permukaan = 2*(3.14*r*t)
PEMILIHAN (1/6) Suatu aksi akan dilakukan hanya jika memenuhi persyaratan atau kondisi tertentu menganalisis kasus yang ada (menentukan kondisi boolean : true atau false) dan menentukan aksi yang dilakukan jika kondisi tersebut terpenuhi (true)
PEMILIHAN (2/6) Simbol : Kasus berupa ekspresi relasional <Kondisi> ? TRUE FALSE Simbol : Kasus berupa ekspresi relasional (operator : =, <, >, <=, >=, , and, or, not)
PEMILIHAN (3/6) Operator not digunakan untuk membuat komplemen (hal yang berkebalikan) dari suatu kondisi boolean If not <ekspresi> then aksi aksi dilakukan jika ekspresi menghasilkan nilai boolean false
PEMILIHAN (4/6) Operator and digunakan untuk menghubungkan suatu kondisi boolean yang terdiri dari beberapa ekspresi relasional, yang akan bernilai true jika SEMUA ekspresi menghasilkan nilai TRUE If <ekspresi1> and <ekspresi2> then aksi aksi dilakukan jika ekspresi1 bernilai true dan ekspresi2 bernilai true
PEMILIHAN (5/6) Operator or digunakan untuk menghubungkan suatu kondisi boolean yang terdiri dari beberapa ekspresi relasional, yang akan bernilai true jika SALAH SATU/LEBIH ekspresi menghasilkan nilai TRUE If <ekspresi1> or <ekspresi2> then aksi aksi dilakukan jika salah satu atau kedua ekspresi bernilai true
PEMILIHAN (6/6) Penentuan kondisi boolean dan aksi yang dilakukan bergantung pada jumlah kasus yang terdapat pada masalah tersebut : Satu kasus Dua kasus Tiga kasus atau lebih
Satu Kasus if <kondisi> then aksi endif
Dua Kasus if <kondisi> then aksi1 else aksi2 endif
Tiga atau Lebih Kasus if <kondisi1> then aksi1 else endif
Struktur Case (1/3) Untuk masalah dengan tiga kasus atau lebih, struktur CASE dapat menyederhanakan penulisan IF-THEN-ELSE yang bertingkat-tingkat.
Struktur Case (2/3) Simbol : Aksi1 Case 1 Case 3 Case 2 Case 4
Struktur Case (3/3) Notasi algoritmis : case (nama) <kondisi1> : aksi1 <kondisi2> : aksi2 <kondisiN> : aksiN endcase
Perulangan Strukutur Perulangan Deskripsi Read(X) Y1 YX*Y Write(Y)
Perulangan (2) Tiga ekspresi algoritma untuk pengulangan : for-do while-do repeat-until Namun demikian, ketiganya memiliki komponen-komponen pengulangan yang sama yaitu, Kondisi pengulangan : Setiap aksi atau kumpulan aksi dikerjakan jika memenuhi kondisi tertentu. Selama kondisi terpenuhi aksi akan terus dikerjakan Badan pengulangan : bagian aksi yang diulang Nilai awal atau inisialisasi : Pemberian nilai satu atau beberapa variabel sebelum pengulangan dilakukan.
Pengulangan For - Do Ada 2 macam pengulangan for-do, yaitu for-do menaik dan for-do menurun. Berikut ini adalah bentuk umumnya. For-do menaik For varnilai_awal to nilai_akhir do Pernyataan Flowchart
Pengulangan For – Do (2) For-do menurun Flowchart For variabelnilai_awal downto nilai_akhir do Pernyataan Flowchart
Pengulangan For – Do (3) Kondisi pengulangan for secara tersirat dapat dilihat pada ni (nilai_awal) dan nf (nilai_akhir); Nilai yang terkandung pada var mula-mula sama dengan nilai_awal, kemudian bertambah (berkurang) sebanyak satu, kemudian berhenti setelah var lebih besar (lebih kecil) nilai_akhir.
Karakteristik pengulangan for-do Aksi mula-mula dilakukan saat var=nilai_awal dan terakhir saat var=nilai_akhir. Var, nilai_awal dan nilai_akhir bertipe bilangan bulat (integer) Setiap selesai satu kali pengulangan var berubah +1 (for-do menaik) atau –1 (for-do menurun). Pengulangan paling sedikit dilakukan sekali, banyaknya pengulangan adalah selisih nilai_awal dan nilai_akhir ditambah 1
Pengulangan While - Do while <kondisi> do Secara umum algoritma while adalah while <kondisi> do begin pernyataan end Flowchart :
Pengulangan While - Do Teks algoritma dan flowchart di atas menunjukkan bahwa ada pengecekan kondisi dulu sebelum aksi berikutnya dilakukan. Aksi di bawah kondisi dikerjakan jika kondisinya atau lebih tepatnya nilai boolean kondisi bernilai benar. Jika kondisi bernilai salah maka proses akan ‘melompat’ atau mengerjakan aksi yang berada di luar loop.
Pengulangan Repeat - Until Secara umum algoritma repeat-until adalah repeat aksi until <kondisi> Flowchart