Bagaimana jika ditemukan sebuah algoritma yang ternyata tidak dapat memecahkan masalah?

Dalam memecahkan masalah, tentulah kita dapat menggunakan algoritma sebagai langkah tepat guna dan efisien. Namun, bagaimana jika ternyata ditemukan sebuah program algoritma yang ternyata tidak mampu menyelesaikan masalah tersebut? Apakah layak disebut algoritma?

Algoritma adalah logika, metode dan tahapan (urutan) sistematis yang digunakan untuk memecahkan suatu permasalahan. Algoritma berisi urutan langkah-langkah yang logis dan juga sistematis. Dalam algoritma, logis merupakan kunci utama untuk menyelesaikan masalah. Langkah-langkah di dalam algoritma harus logis, ini berarti hasil dari urutan langkah-langkah tersebut harus dapat ditentukan, benar atau salah. Langkah-langkah yang tidak benar dapat memberikan hasil yang salah.

Dalam mendefinisikan algoritma, kita harus dapat mendefinisikan tiga hal utama dengan jelas, yaitu:

  1. Masalah, yaitu sebuah persoalan yang ingin diselesaikan oleh sebuah algoritma.
  2. Masukan, yaitu contoh data atau keadaan yang menjadi permasalahan.
  3. Keluaran, yaitu bentuk akhir dari data atau keadaan setelah algoritma diimplementasikan ke masukan atau permasalahan. Keluaran merupakan hasil ideal yang diinginkan dan dianggap telah menyelesaikan masalah.

Namun, bagaimana jika ternyata ditemukan sebuah program algoritma yang ternyata tidak mampu menyelesaikan masalah tersebut? Apakah layak disebut algoritma?

Tentu kita ketahui dari definisi algoritma bahwa algoritma diciptakan untuk membatu kita dalam menyelesaikan masalah. Jika sebuah program algoritma ternyata tidak mampu dalam menyelesaikan masalah tentu saja tidak layak untuk disebut sebagai algoritma. Bila algoritma tidak menyelesaikan masalah perlu kita perhatikan kembali 3 hal utama dalam algoritma. lantas perhatikan pula langkah-langkah yang telah kita buat untuk menyelesaikan masalah tersebut. Karena langkah-langkah sangat memperngaruhi hasil atau solusi dari permasalahan. Kita bisa menggunakan Computational Thinking atau berpikir komputasi untuk membantu kita menentukan langkah-langkah dalam menyelesaikan masalah.

Sumber:
damaart.blogspot.co.id : Pengenalan Algoritma dan Contoh

Algoritma adalah sebuah tatacara atau langkah-langkah dalam menyelesaikan suatu masalah. Algoritma mengandalkan konsep berpikir secara logis dalam menentukan sebuah keputusan akhir. Dalam setiap urutan algoritma haruslah bersifat logis dan dipertanggungjawabkan, artinya tiap poin yang ada dalam algoritma adalah suatu persyaratan dalam merumuskan penyelesaian masalah.

Sebuah algoritma mempunyai karakteristik sebagai berikut :

  1. Algoritma tidak boleh ambigu. Artinya, algoritma hanya boleh mempunyai tafsiran tunggal dalam mendeskripsikan suatu langkah-langkah memecahkan masalah.
  2. Algoritma harus menyatakan urutan langkah-langkahnya.
  3. Algoritma harus pasti.
  4. Algoritma harus mempunyai batas akhir agar didapat suatu keputusan yang jelas.

Jika algoritma tidak memenuhi karakteristik di atas, dapat dipastikan bahwa langkah-langkah yang disusun bukanlah sebuah algoritma, karena jika ditemukan satu poin yang menyimpang dari sebuah urutan algoritma, maka dapat dipastikan algoritma tersebut harus dipertanyakan kevalidannya. Maka, kesimpulannya adalah hasil dari sebuah algoritma harus mempunyai solusi dari masalah yang ada; atau tidak memberikan solusi sama sekali.

Sumber : skrgtgskom.wordpress.com : Logika dan Algoritma

Pertama yang dapat kita lakukan adalah memeriksa kembali algoritma kita. Kita dapat mengulangi proses identifikasi masalah kemudian kita bahas ulang semua masalah kita. Kita dapat kembali mendegeneralisasikan masalah kita kemudian kita dapat mengabstraksikannya lagi. Setelah itu kita kembali mencari akar permasalahan dari masalah kita dan kita akan mencari solusinya kembali. Jika itu masih belum memecahkan masalah maka kita akan ulangi terus menerus sampai solusi untuk masalah tersebut tercapai.