Dalam dunia pemrograman dan ilmu komputer, algoritma merupakan langkah-langkah atau aturan yang digunakan untuk menyelesaikan masalah atau tugas tertentu. Namun, ada beberapa hal yang tidak termasuk ke dalam fungsi algoritma. Artikel ini akan membahas hal-hal tersebut secara mendalam untuk memberikan pemahaman yang lebih baik tentang konsep algoritma.
1. Keputusan Subjektif
Keputusan subjektif tidak bisa dimasukkan ke dalam fungsi algoritma karena algoritma didasarkan pada langkah-langkah yang objektif dan dapat diukur. Keputusan subjektif bergantung pada penilaian pribadi dan tidak dapat diukur secara konsisten. Contoh keputusan subjektif adalah apakah suatu karya seni indah atau tidak, atau apakah suatu lagu enak didengar atau tidak.
2. Kecurangan atau Manipulasi
Algoritma tidak dapat mengikutsertakan kecurangan atau manipulasi dalam langkah-langkahnya. Sebuah algoritma harus adil dan objektif, dan tidak boleh dimanipulasi untuk kepentingan tertentu. Misalnya, algoritma dalam pemilihan umum harus adil dan menghasilkan hasil yang sesuai dengan kehendak rakyat.
3. Tidak Memiliki Langkah Terdefinisi
Sebuah fungsi algoritma harus memiliki langkah-langkah terdefinisi yang jelas dan dapat dijalankan secara berurutan. Hal ini berarti tidak boleh ada langkah yang ambigu atau tidak jelas, dan setiap langkah harus dapat dijalankan tanpa interpretasi yang ambigu. Sebagai contoh, algoritma untuk mencari rute tercepat dari titik A ke titik B harus memiliki langkah-langkah yang jelas untuk setiap jalur yang dapat diambil.
4. Bergantung Pada Keberuntungan
Algoritma haruslah berdasarkan pada logika dan perhitungan yang dapat diukur, dan tidak bergantung pada keberuntungan. Hal ini berarti algoritma tidak boleh memiliki langkah-langkah yang mengandalkan keberuntungan atau kebetulan, melainkan harus didasarkan pada data dan logika yang konsisten. Sebagai contoh, algoritma pencarian harus menghasilkan hasil yang konsisten tanpa tergantung pada keberuntungan.
5. Penggunaan Bahasa yang Tidak Jelas
Sebuah algoritma harus ditulis dengan bahasa yang jelas dan mudah dipahami. Bahasa yang tidak jelas atau ambigu dapat menyebabkan algoritma menjadi tidak efektif atau tidak bisa dijalankan dengan benar. Oleh karena itu, algoritma harus menggunakan bahasa formal dan jelas agar dapat diimplementasikan dengan baik.
6. Tidak Memiliki Solusi
Algoritma harus memiliki solusi yang jelas dan dapat diimplementasikan. Sebuah algoritma tidak bisa dianggap efektif jika tidak memiliki solusi yang dapat dijalankan. Setiap langkah dalam algoritma harus menuju kepada solusi yang diinginkan tanpa ambigu atau ketidakpastian.
7. Tidak Memiliki Batasan Waktu dan Ruang
Sebuah algoritma harus memiliki batasan waktu dan batasan ruang yang jelas. Batasan waktu mengacu pada berapa lama waktu yang dibutuhkan untuk menjalankan algoritma, sedangkan batasan ruang mengacu pada berapa banyak memori yang dibutuhkan untuk menjalankan algoritma. Algoritma yang tidak memiliki batasan waktu dan ruang dapat menjadi tidak efisien atau bahkan tidak dapat dijalankan dalam praktek.
8. Tidak Memiliki Langkah Berhenti
Sebuah algoritma harus memiliki langkah berhenti yang jelas. Langkah berhenti ini menunjukkan kapan algoritma sudah mencapai solusi atau tidak bisa melangkah lebih jauh lagi. Tanpa langkah berhenti, algoritma dapat terus berjalan tanpa henti, menjadi tidak efektif, atau bahkan menyebabkan error.
9. Tidak Memiliki Kejelasan Penyelesaian Masalah
Algoritma harus memiliki kejelasan penyelesaian masalah. Hal ini berarti setiap langkah dalam algoritma harus menuju kepada solusi masalah yang diinginkan, dan tidak boleh menghasilkan hasil yang ambigu. Sebuah algoritma harus memberikan jawaban yang jelas dan sesuai dengan masalah yang ingin diselesaikan.
10. Tidak Berdasarkan Logika yang Konsisten
Logika yang konsisten merupakan hal yang sangat penting dalam algoritma. Sebuah algoritma harus didasarkan pada logika yang konsisten dan dapat diukur. Hal ini berarti setiap langkah dalam algoritma harus dapat dijelaskan secara logis dan dapat diulang dengan hasil yang konsisten.
Demikianlah beberapa hal yang tidak termasuk ke dalam fungsi algoritma. Memahami hal-hal ini dapat membantu dalam merancang atau mengevaluasi algoritma dengan lebih baik. Dengan tetap memperhatikan prinsip-prinsip algoritma yang objektif dan efektif, dapat dihasilkan algoritma yang dapat menyelesaikan masalah dengan baik dan efisien.