Algoritma, Pseudocode, dan Flowchart

Jenis Proses Algoritma

• Sequence Process: instruksi dikerjakan secara sekuensial, berurutan.

• Selection Process: instruksi dikerjakan jika memenuhi kriteria tertentu

• Iteration Process: instruksi dikerjakan selama memenuhi suatu kondisi tertentu.

• Concurrent Process: beberapa instruksi dikerjakan secara bersama.


Contoh Algoritma

• Algoritma menghitung luas persegi panjang:

o Masukkan panjang (P)

o Masukkan lebar (L)

o Luas ← P * L

o Tulis Luas

• Sifat: Umum

o Tidak menggunakan simbol atau sintaks dari suatu bahasa pemrograman

o Tidak tergantung pada suatu bahasa pemrograman

o Notasi-notasinya dapat digunakan untuk seluruh bahasa manapun

Pseudo Code

• Kode atau tanda yang menyerupai (pseudo) atau merupakan pejelasan cara menyelesaikan suatu masalah.

• Pseudo-code sering digunakan oleh manusia untuk menuliskan algoritma

Contoh

• Problem: mencari bilangan terbesar dari dua bilangan yang diinputkan

• Contoh Algoritma:

o Masukkan bilangan pertama

o Masukkan bilangan kedua

o Jika bilangan pertama > bilangan kedua maka kerjakan langkah 4, jika tidak, kerjakan langkah 5.

o Tampilkan bilangan pertama

o Tampilkan bilangan kedua

• Contoh Pseudo-code:

o Input a

o Input b

o If a > b then kerjakan langkah 4

o print a

o print b

Bagian Program

• Suatu program pada dasarnya terdiri dari 3 bagian:

o Input: bisa ada, bisa tidak

o Proses

o Output: minimal satu ouput.

Langkah Pembuatan Program

1. Mendefinisikan masalah

• Ini merupakan langkah pertama yang sering dilupakan orang.

• Menurut hukum Murphy (oleh Henry Ledgard):

o “Semakin cepat menulis program, akan semakin lama kita dapat menyelesaikannya”.

• Hal tersebut berlaku untuk permasalahan yang kompleks. Tentukan masalahnya, apa saja yang harus dipecahkan dengan menggunakan komputer, dan apa inputan serta outputnya.

2. Menemukan solusi

• Setelah masalah didefinisikan, maka langkah berikutnya adalah menentukan solusi. Jika masalah terlalu kompleks, maka ada baiknya masalah tersebut dipecah menjadi modul-modul kecil agar lebih mudah diselesaikan.

• Contohnya masalah invers matriks, maka kita dapat membagi menjadi beberapa modul:

o meminta masukkan berupa matriks bujur sangkar

o mencari invers matriks

o menampilkan hasil kepada pengguna

• Dengan penggunaan modul tersebut program utama akan menjadi lebih singkat dan mudah dilihat.

3. Memilih algoritma

• Pilihlah algoritma yang benar-benar sesuai dan efisien untuk permasalahan tersebut

4. Menulis program

• Pilihlah bahasa yang mudah dipelajari, mudah digunakan, dan lebih baik lagi jika sudah dikuasai, memiliki tingkat kompatibilitas tinggi dengan perangkat keras dan platform lainnya.

5. Menguji program

• Setelah program jadi, silahkan uji program tersebut dengan segala macam kemungkinan yang ada, termasuk error-handlingnya sehingga program tersebut akan benar-benar handal dan layak digunakan.

6. Menulis dokumentasi

• Menulis dokumentasi sangat penting agar pada suatu saat jika kita akan melakukan perubahan atau membaca source code yang sudah kita tulis dapat kita ingat-ingat lagi dan kita akan mudah membacanya. Caranya adalah dengan menuliskan komentar-komentar kecil tentang apa maksud kode tersebut, untuk apa, variabel apa saja yang digunakan, untuk apa, dan parameter-parameter yang ada pada suatu prosedur dan fungsi.

7. Merawat program

• Program yang sudah jadi perlu dirawat untuk mencegah munculnya bug yang sebelumnya tidak terdeteksi. Atau mungkin juga pengguna membutuhkan fasilitas baru yang dulu tidak ada

Flowchart

• Definisi:

o Bentuk gambar/diagram yang mempunyai aliran satu atau dua arah secara sekuensial

• Kegunaan:

o Untuk mendesain program

o Untuk merepresentasikan program

• Maka, flowchart harus dapat merepresentasikan komponen-komponen dalam bahasa pemrograman

Pembuatan Flowchart

• Sebelum pembuatan program

o Mempermudah programmer dalam menentukan alur logika program

• Sesudah pembuatan program

o Menjelaskan alur program kepada orang lain

Flowchart

• Secara garis besar, unsur-unsur pemrograman adalah Input à Proses à Output. Semua bahasa pemrograman, pasti mempunyai komponen-komponen sebagai berikut :

o Input (scanf)

o Percabangan (if, switch)

o Perulangan (while, for, for each, loop)

o Output (printf)

Lambang untuk Flowchart

• Untuk membuat/menggambar flowchart, anda bisa gunakan Ms Word atau program lainnya (disini penulis menggunakan Ms Word). Lambang-lambang tersebut adalah :

0 komentar:

Posting Komentar