A. Tujuan
Setelah mempelajari materi ini , siswa diharapkan mampu :
1. Menjelaskan definisi dan bentuk-bentuk dasar algoritma.
2. Membedakan algoritma sekuensial, perulangan dan percabangan.
3. Menjelaskan langkah-langkah pemecahan masalah secara matematis.
4. Merancang algoritma yang baik sesuai dengan kriteria pembuatan algoritma.
5. Menjelaskan fungsi-fungsi pembuatan diagram alir.
6. Menjelaskan pedoman pembuatan diagram alir.
7. Menyebutkan simbol-simbol diagram alir beserta kegunaannya masing-masing.
8. Membuat diagram alir untuk pemecahan masalah tertentu.
B. Uraian Materi
1) Definisi algoritma
Pengertian algoritma adalah suatu urutan dari beberapa langkah yang logis guna menyelesaikan masalah.
Pada saat memiliki masalah, maka kita harus dapat menyelesaikan masalah tersebut dengan menggunakan langkah-langkah yang logis. Contoh dari algoritma sederhana dalam kehidupan nyata adalah pada saat memasak air. Hal-hal yang perlu dilakukan untuk memasak air seperti berikut : siapkan panci, masukkan air secukupnya ke dalam panci, tutup panci tersebut, letakkan panci tersebut di atas kompor, hidupkan kompor dengan api sedang, apabila air sudah mendidih, matikan kompor, setelah itu angkat panci tersebut dari kompor. Langkah-langkah untuk memasak air tersebut merupakan algoritma memasak air. Sehingga memiliki urutan langkah-langkah yang logis
Dalam ilmu matematika dan komputer, pengertian algoritma merupakan prosedur dari beberapa langkah demi langkah untuk penghitungan. Algoritma dipakai untuk penghitungan, penalaran otomatis, dan pemrosesan data. Pengertian algoritma ialah suatu metode yang efektif diekspresikan sebagai rangkaian yang terbatas dari beberapa instruksi yang telah dijelaskan dengan baik guna menghitung sebuah fungsi. Susunan algoritma dimulai dari kondisi awal dan input awal, instruksi tersebut mendeskripsikan komputasi yang apabila itu dieksekusi serta diproses dengan melewati urutan-urutan kondisi terbatas yang terdefinisi dengan baik, sehingga dapat menghasilkan output atau keluaran dan berhenti di kondisi akhir yang telah ditentukan
Algoritma sangat diperlukan untuk mengolah data di komputer. Dalam sistem komputer, pengertian algoritma ialah logika yang dibuat dengan memakai software oleh programmer untuk membuat software tersebut menjadi lebih bagus.
Algoritma berbeda dengan Logaritma. Kata Algoritma ditemukan oleh Abu Abdullah Muhammad Ibnu Musa Al-Khwarizmi pada abad ke-9, beliau merupakan matematikawan yang berasal dari Persia. Dari masa ke masa, kata algoritma mulai berkembang di abad ke-18.
Untuk lebih jelasnya, berikut ini salah satu contoh algoritma :
Algoritma untuk menghitung nilai x dari persamaan x = 17y + 9 :
1) Memulai
2) Menentukan nilai y
3) Menghitung nilai x = 17y + 9
4) Menyelesaikan
2) Bentuk dasar algoritma
Algoritma sendiri mempunyai tiga 3 bentuk dasar, antara lain :
1. Algoritma Sekuensial (Sequence Algorithm)
Sequence algorithm atau algoritma sekuensial merupakan algoritma yang langkah-langkahnya secara urut dari awal hingga akhir. Bentuk dari algoritma sekuensial ini salah satu contohnya seperti algoritma memasak air. Langkah demi langkah yang dijalankan harus urut dari atas sampai bawah.
2. Algoritma Perulangan (Looping Algorithm)
Looping algorithm atau algoritma perulangan merupakan suatu algoritma yang menjalankan beberapa langkah tertentu secara berulang-ulang atau looping. Pada masalah yang kita hadapi, ada pula sebuah langkah yang harus kita lakukan secara berulang-ulang. Contoh dari algoritma looping ini adalah algoritma menjemur pakaian:
1) Siapkan jemuran.
2) Ambil satu pakaian yang nantinya akan dijemur.
3) Peras pakaian tersebut terlebih dahulu.
4) Letakkan pakaian tersebut pada tiang jemuran.
5) Ulangi langkah dari 2 sampai 4 hingga pakaian habis.
Dari algoritma di atas, dapat diketahui bahwa dari langkah 2 sampai 4 harus dilakukan secara berulang-ulang hingga pakaian habis.
3. Algoritma Percabangan atau Bersyarat (Conditional Algorithm)
Conditional algorithm atau algoritma bersyarat merupakan algoritma yang menjalankan langkah berikutnya apabila terdapat syarat yang sudah dapat dipenuhi. Berikut salah satu contoh dari algoritma bersyarat :
1) Siapkan panci.
2) Masukkan air secukupnya ke dalam panci.
3) tutup panci tersebut.
4) letakkan panci tersebut di atas kompor.
5) Hidupkan kompor.
6) Apabila air sudah mendidih, lalu matikan kompor.
7) Angkat panci tersebut dari kompor.
Algoritma bersyarat atau contional algorithm terdapat pada langkah ke 6. Apabila air sudah mendidih, lalu matikan kompor. Sehingga apabila air tersebut belum mendidih, maka kompor tidak dimatikan.
3) Merancang algoritma yang baik
Berdasarkan pengertian algoritma diatas dapat diketahui bahwa sebuah algoritma yang baik yaitu algoritma yang mempunyai kriteria sebagai berikut :
1. Masukan (Input)
Algoritma mempunyai input 0 (nol) atau lebih
2. Keluaran (Output)
Algoritma harus menghasilkan atau mengeluarkan minimal 1 output.
3. Terbatas (Finite)
Algoritma harus berhenti setelah melakukan langkah-langkah yang diperlukan.
4. Pasti (Definite)
Algoritma harus jelas kapan dimulai dan berakhir. Tujuan dari algoritma harus jelas. Setiap langkah-langkah harus dijelaskan dengan jelas.
5. Efisien
Membuat sebuah algoritma haruslah efisien. Adanya langkah seperti mencari hasil 1 + 0 tidak efisien. Hal ini karena bilangan apapun itu jika ditambah dengan nol maka hasilnya ialah bilangan itu sendiri. Sehingga adanya langkah seperti itu tidak perlu dimasukkan ke dalam sebuah algoritma.
Algoritma dapat disajikan ke dalam 2 bentuk, yaitu bentuk tulisan atau bahasa dan bentuk gambar. Penyajian algoritma dalam bentuk bahasa atau tulisan harus memakai sebuah bahasa yang dapat untuk dimengerti manusia dalam membuat langkah-langkah dari algoritma itu sendiri. Penyajian algoritma dalam bentuk tulisan/bahasa dapat dilakukan dengan memakai pseudocode. Pseudocode berasal dari "pseudo" aritnya "menyerupai atau mirip" dan "code" yaitu "kode program". Contoh dari beberapa bahasa pemrograman yang sering digunakan untuk menyatakan pseudocode antara lain : BASIC, Pascal, C, dan lain sebagainya. Terdapat juga penyajian algoritma dalam bentuk gambar yang disebut flow chart atau diagram alir.
4) Diagram alir (Flow Chart)
Flow chart adalah sebuah metode penggambaran alur dari logika yang kita terapkan pada sebuah algoritma. flow chart menjadi langkah analisa paling awal sebelum membuat sebuah algoritma atau program.
Tujuan pembuatan flow chart adalah menjelaskan cara kerja program kepada user agar lebih mudah dimengerti. Seiring berkembangnya waktu, flow chart kini digunakan untuk mengajari seseorang yang termasuk “pemula” dalam dunia programming untuk menguatkan logika mereka.
Setelah flow chart selesai disusun, selanjutnya programmer menerjemahkannya dalam bentuk program dengan bahasa pemrograman.
Manfaat pembuatan flow chart antara lain :
1. Sebagai sarana komunikasi dalam analisis sebuah proses.
2. Dapat dipergunakan untuk menjabarkan suatu proses pekerjaan ke dalam tahap-tahap rangkaian yang lebih spesifik untuk pemeriksaan selanjutnya.
3. Dapat dipergunakan untuk memperinci tahap-tahap rangkaian dan suatu proses pekerjaan.
Pembuatan flow chart harus mengikuti pedoman pembuatan flow chart yang berlaku. Hal ini karena flow chart yang dibuat nantinya akan digunakan juga oleh orang lain. Flow chart yang dibuat sesuai pedoman diharapkan meciptakan kesamaan persepsi ketika menterjemahkan atau memahami langkah-langkah yang digambarkan pada flow chart tersebut.
Pedoman pembuatan flow chart diantaranya :
1. Digambarkan dari halaman atas ke bawah dan dari kiri ke kanan,
2. Kapan aktivitas dimulai dan berakhir harus ditentukan secara jelas,
3. Aktivitas yang digambarkan harus dapat dimengerti oleh pembacanya,
4. Gunakan simbol-simbol flow chart yang standar.
5. Setiap langkah dari aktivitas diuraikan dengan menggunakan deskripsi kata kerja
6. Setiap langkah dari aktivitas harus berada pada urutan yang benar.
Simbol-simbol flow chart dapat dikelompokkan menjadi 3 kelompok, yaitu :
1) Flow Direction Symbols : Digunakan untuk menghubungkan simbol satu
dengan yang lain, disebut juga connecting line.
2) Processing Symbols : Menunjukan jenis operasi pengolahan dalam suatu
proses/prosedur.
3) Input-output Symbols : Menunjukkan jenis peralatan yang digunakan sebagai
media input atau output.
Berikut ini simbol-simbol flow chart yang umum digunakan :
Gambar 1. Simbol-simbol flow chart
5) Contoh pembuatan Flow Chart
Contoh 1
PERMASALAHAN : Menentukan luas segitiga
- ALGORITMA
1. Masukan nilai alas (a) dan nilai tinggi segitiga (t)
2. Maka untuk menghitung luas digunakan rumus alas dengan tinggi yang sudah ditentukan
3. Rumus untuk menghitung Luas Segitiga yaitu L = 1/2*a*t
4. Nilai L (Luas) akan dicetak sebagai output ke perangkat output (keluaran)
- FLOW CHART
Contoh 2
PERMASALAHAN : Menentukan kelulusan siswa
- ALGORITMA
1. Nama mahasiswa dan nilai (sudah terbaca)
2. Kalau mahasiswa mendapat nilai >70 maka ket “ lulus”
3. Kalau mahasiswa mendapat nilai <70 maka ket “tidak lulus”
4. Data nama, nilai dan keterangan akan ditampilkan
- FLOW CHART
C. Latihan Soal
1. Penyajian Algoritma dalam bentu gambar dinamakan...........
a. Flow Chart
b. Cash Flow
c. Contra Flow
d. Pseudocode
e. Coding
2. Algoritma yang baik memiliki kriteria seperti berikut ini, KECUALI.....
a. Memiliki input 0 atau lebih
b. Memiliki ouput maksimal 1 output
c. Algoritma harus berhenti setelah melakukan langkah-langkah yang diperlukan
d. Algoritma harus jelas kapan dimulai dan berakhir
e. Efisien
3. Gambar berikut ini adalah bentuk Flow Chart dari Algoritma?
a. Berurutan
b. Sekuensial
c. Looping
d. Bersyarat
e. Pengulangan
4. Ciri-ciri algoritma percabangan adalah....
a. Urutan langkah-langkahnya memiliki titik percabangan
b. Memiliki masukan/input bercabang atau lebih dari satu
c. Keluaran/outputnya memiliki lebih dari satu produk
d. Langkah berikutnya hanya dapat dijalankan kalau syarat-syaratnya sudah terpenuhi
e. Terdapat langkah tertentu yang dikerjakan secara berulabg-ulang
5. Berikut ini dalah beberapa pedoman dalam membuat flow chart, KECUALI.....
a. Digambarkan dari halaman atas ke bawah dan dari kanan ke kiri
b. Setiap langkah dari aktifitas harus diuraikan dengan menggunakan deskripsi kata
c. Aktifitas yang digambarkan harus dimengerti oleh pembacanya
d. Menggunakan simbol-sombol flow chart yang standar
e. Kapan aktifitas dimulai dan diakhiri harus ditentukan secara jelas
D. Jawaban latihan soal
1. A
2. B
3. D
4. D
5. A
Tidak ada komentar:
Posting Komentar