Apa yang terjadi ketika dalam penerapan algoritma ada Langkah yang tertinggal?

Dalam matematika dan ilmu komputer, algoritma adalah urutan atau langkah-langkah untuk penghitungan atau untuk menyelesaikan suatu masalah yang ditulis secara berurutan. Sehingga, algoritma pemrograman adalah urutan atau langkah-langkah untuk menyelesaikan masalah pemrograman komputer. Dalam pemrograman, hal yang penting untuk dipahami adalah logika kita dalam berpikir bagaimana cara untuk memecahkan masalah pemrograman yang akan dibuat. Sebagai contoh, banyak permasalahan matematika yang mudah jika diselesaikan secara tertulis, tetapi cukup sulit jika kita terjemahkan ke dalam pemrograman. Dalam hal ini, algoritma dan logika pemrograman akan sangat penting dalam pemecahan masalah.

Algoritma adalah spesifikasi urutan langkah untuk melakukan pekerjaan tertentu, apa yang terjadi ketika ada Langkah yang tertinggal dan bagaimana cara mengatasinya?

Algoritma adalah jantung ilmu komputer atau informatika. Banyak cabang ilmu komputer yang mengarah ke dalam terminologi algoritma. Namun, jangan beranggapan algoritma selalu identik dengan ilmu komputer saja. Dalam kehidupan sehari-hari pun banyak terdapat proses yang dinyatakan dalam suatu algoritma. Cara-cara membuat kue atau masakan yang dinyatakan dalam suatu resep juga dapat disebut sebagai algoritma. Pada setiap resep selalu ada urutan langkah-langkah membuat masakan. Bila langkah-langkahnya tidak logis, tidak dapat dihasilkan masakan yang diinginkan. Ibu-ibu yang mencoba suatu resep masakan akan membaca satu per satu langkah-langkah pembuatannya lalu ia mengerjakan proses sesuai yang ia baca. Secara umum, pihak (benda) yang mengerjakan proses disebut pemroses (processor). Pemroses tersebut dapat berupa manusia, komputer, robot atau alat-alat elektronik lainnya. Pemroses melakukan suatu proses dengan melaksanakan atau “mengeksekusi” algoritma yang menjabarkan proses tersebut.

Algoritma adalah deskripsi dari suatu pola tingkah laku yang dinyatakan secara primitif yaitu aksi-aksi yang didefenisikan sebelumnya dan diberi nama, dan diasumsikan sebelumnya bahwa aksi-aksi tersebut dapat kerjakan sehingga dapat menyebabkan kejadian.

Melaksanakan algoritma berarti mengerjakan langkah-langkah di dalam algoritma tersebut. Pemroses mengerjakan proses sesuai dengan algoritma yang diberikan kepadanya. Juru masak membuat kue berdasarkan resep yang diberikan kepadanya, pianis memainkan lagu berdasarkan papan not balok. Karena itu suatu algoritma harus dinyatakan dalam bentuk yang dapat dimengerti oleh pemroses. Jadi suatu pemroses harus:

• Mengerti setiap langkah dalam algoritma.
• Mengerjakan operasi yang bersesuaian dengan langkah tersebut.

Algoritma merupakan langkah-langkah yang sistematis untuk menyelesaikan sebuah permasalahan. Langkah-langkah ini harus teratur, terurut, dan lengkap (tidak ada langkah yang tertinggal). Apabila langkah-langkah tersebut tidak dilakukan secara sistematis, maka tidak akan terbentuk solusi yang tepat. Maka, jika ada langkah yang tertinggal dalam pembuatan algoritma, kita harus membuat ulang algoritma tersebut agar bisa digunakan sebagai solusi untuk menyelesaikan sebuah masalah.

Contohnya, algoritma membuat teh manis. Hal pertama yang kita lakukan adalah menyiapkan gelas, sendok, teh, gula, dan air hangat. Kemudian masukkan air hangat ke dalam gelas. Lalu, celupkan teh ke dalam gelas sampai warnanya berubah menjadi cokelat. Keluarkan teh celup. Masukkan gula sebanyak 2 sendok. Aduk rata menggunakan sendok. Teh siap disajikan.

Jika kita tidak melakukan langkah memasukkan gula, maka yang terjadi adalah teh tidak akan terasa manis. Artinya tujuan dari pembuatan algoritma ini tidak tercapai dan masalah yang ada tidak terselesaikan. Oleh karena itu, dalam pembuatan algoritma, kita harus memperhatikan urutan dan kelengkapan langkah agar tujuan yang diharapkan dapat tercapai.

Algoritma

Ketika manusia berusaha memecahkan masalah, etode atau teknik yang digunakan untuk memecahkan masalah, terdapat banyak sekali kemungkinan. Kita memilih mana yang terbaik di antara teknik-teknik itu. Hal ini sama juga dengan algoritma, yang memungkinkan suatu permasalahan dipecahkan dengan metode dan logika yang berlainan. Terkadang kita sudah menemukan suatu teknik dengan kemungkinan keberhasilan yang tinggi. Namun, tidak jarang juga kita mendapati kesalahan, bahkan melewatkan beberapa hal yang penting. Bagaimana cara mengatasinya?

Sebelum kita mengetahui cara mengatasinya, ada beberapa persyaratan untuk membuat algoritma yang baik. Perhatikan syarat-syarat berikut agar dapat lebih memahami tentang algoritma:

  1. Tingkat kepercayaan tinggi (reliability)
    Hasil yang diperoleh dari proses harus berakurasi tinggi dan benar.
  2. Pemrosesan yang efisien (cost rendah)
    Proses harus diselesaikan secepat mungkin dan frekuensi kalkulasi yang sependek mungkin.
  3. Sifat general
    Bukan suatu yang hanya untuk enyelesaikan suatu kasus saja, tapi juga untuk kasus lain yang lebih general.
  4. Bisa dikembangkan (expandable)
    Haruslah sesuatu yang dapat kita kembangkan lebih jauh berdasarkan perubahan requirement yang ada.
  5. Mudah dimengerti
    Siapapun yang melihat, dia akan bisa memahami algoritma Anda. Susah dimengertinya suatu program akan membuat susah di-maintenance (kelola).
  6. Portabilitas yang tinggi
    Bisa dengan mudah diimplementasikan di berbagai platform komputer.
  7. Precise (tepat, betul, teliti)
    Setiap instruksi harus ditulis dengan seksama dan tidak ada keragu-raguan, dengan demikian setiap instruksi harus dinyatakan secara eksplisit dan tidak ada bagian yang dihilangkan karena pemroses dianggap sudah mengerti. Setiap langkah harus jelas dan pasti.
    Contoh: Tambahkan 1 atau 2 pada x. Intruksi tersebut terdapat keraguan.
  8. Jumlah langkah atau instruksi berhingga dan tertentu
    Artinya, untuk kasus yang sama banyaknya, langkah harus tetap dan tertentu meskipun datanya berbeda.
  9. Efektif
    Tidak boleh ada instruksi yang tidak mungkin dikerjakan oleh pemroses yang akan menjalankannya.
    Contoh : Hitung akar 2 dengan presisi sempurna. Intruksi tersebut tidak efektif, agar efekti instruksi tersebut diubah. Misal : Hitung akar 2 sampai lima digit di belakan koma.
  10. Harus terminate
    Jalannya algoritma harus ada kriteria berhenti. Pertanyaannya adalah apakah bila jumlah instruksinya berhingga maka pasti terminate?
  11. Output yang dihasilkan tepat
    Jika langkah-langkah algoritmanya logis dan diikuti dengan seksama maka dihasilkan output yang diinginkan.

Kesalahan


Bagaimana jika ada langkah yang tertinggal?

Algoritma sendiri berarti langkah-langkah yang sistematis untuk menyelesaikan sebuah permasalahan. Jika langkah-langkah tersebut tidak dijalankan secara teratur, maka sistem tidak akan berjalan sewajarnya. Bisa jadi hal yang ingin dicapai menjadi tidak maksimal, atau malah menjadi gagal. Sekecil apapun langkah yang tertinggal, akan berdampak terhadap hasil dari algoritma tersebut.

Bagaimana cara mengatasinya?

Kita harus perhatikan kembali langkah-langkah yang diambil. Apakah sudah memenuhi aturan tahapan algoritma beserta syarat-syaratnya, ataukah belum. Lebih baik sejak awal, kita membuat sebuah algoritma berpacu kepada tahapan aktual. Dari situ, solusi dari setiap tahapan dapat dikembangkan lagi. Jadi tidak perlu terburu-buru dalam menentukan algoritma. Ada baiknya tiap tahapan tersebut kita uji valid atau tidaknya. Pengujian dapat berupa pencocokan data dan informasi yang diperoleh, atau dengan perhitungan. Jika kita memenuhi aturan tahapan algoritma dan syarat-syaratnya, kemungkinan kesalahan yang akan timbul akan menjadi lebih kecil.

:grinning:
Sumber:

Algoritma dan Pemrograman

Wikipedia : Algoritma